ruby novice ruby novice ruby novice.

Similar documents
目次 1. Serverspec とは 1.1. Serverspecとは 1.2. Serverspecで出来る事 2. セットアップ 2.1. 必要なもの 2.2. インストール 3. デモ 3.1. デモ環境について 3.2. テスト対象サーバーの登録 3.3. サンプルテストの中身 3.4.

Emacs Ruby..

help gem gem gem my help


Windows [ ] [ (R)..] cmd [OK] Z:\> mkdir progi [Enter] \ ) mkdir progi ) (command ) help [Enter] help ( help ) mkdir make directory Windows ) mkdir mk

An introduction and future of Ruby coverage library

bdd.gby

クックパッドのテスト自動化

AN 100: ISPを使用するためのガイドライン

IIJ Technical WEEK アプリ開発を楽にするRuby PaaS「MOGOK」について

syspro-0405.ppt

¥×¥í¥°¥é¥ß¥ó¥°±é½¬I Exercise on Programming I [1zh] ` `%%%`#`&12_`__~~~ alse

Ver.1 1/17/2003 2

untitled

ruby learner - Ruby

I 1 1 ( *) ( *) ex1-1.rb ) 2 CGI

̤Äê


Introduction Purpose This training course demonstrates the use of the High-performance Embedded Workshop (HEW), a key tool for developing software for

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV

¥×¥í¥°¥é¥ß¥ó¥°±é½¬I Exercise on Programming I [1zh] ` `%%%`#`&12_`__~~~ alse

利用者

PBASIC 2.5 PBASIC 2.5 $PBASIC directive PIN type New DEBUG control characters DEBUGIN Line continuation for comma-delimited lists IF THEN ELSE * SELEC

Condition DAQ condition condition 2 3 XML key value

Docker Haruka Iwao Storage Solution Architect, Red Hat K.K. February 12, 2015


Compatibility list: vTESTstudio/CANoe

test.gby

Ruby演習テキスト1

1 I EViews View Proc Freeze

¥¤¥ó¥¿¡¼¥Í¥Ã¥È·×¬¤È¥Ç¡¼¥¿²òÀÏ Âè2²ó

Ruby Ruby ruby Ruby G: Ruby>ruby Ks sample1.rb G: Ruby> irb (interactive Ruby) G: Ruby>irb -Ks irb(main):001:0> print( ) 44=>


目次 1.rug について zmd の動作確認 rug からの情報の取得 rug コマンドの使用例 アップデート可能なパッケージの一覧を表示 パッケージを検索する 特定のパッケージをインストール / ア

バージョン管理ツールを使い Debian パッケージを管理する - Git 編

untitled

Mail_Spam_Manual_120815b

X Window System X X &

120802_MPI.ppt

ワークショップ テスト駆動開発

Windows Cygwin Mac *1 Emacs Ruby ( ) 1 Cygwin Bash Cygwin Windows Cygwin Cygwin Mac 1 Mac 1.2 *2 ls *3 *1 OS Linux *2 *3 Enter ( ) 2

r1.dvi

GitLab + Dokku で作る CI/ CD 環境 Kazuhiro NISHIYAMA 第 78 回 Ruby 関西勉強会 2017/07/29 Powered by Rabbit 2.2.0

IIJ GIO, SaaS, MOGOK


¥×¥í¥°¥é¥ß¥ó¥°±é½¬I Exercise on Programming I [1zh] ` `%%%`#`&12_`__~~~ alse

Cleaner XL 1.5 クイックインストールガイド

Specview Specview Specview STSCI(Space Telescope SCience Institute) VO Specview Web page htt

WEB DB PRESS Vol.1 65


(CC Attribution) Lisp 2.1 (Gauche )

10 (1) s 10.2 rails c Rails 7 > item = PlanItem.new => #<PlanItem id nil, name nil,...> > item.name = "" => "" > item.valid? => true valid? true false

第5回お試しアカウント付き並列プログラミング講習会

15 Phoenix HTML 15.1 ModestGreeter RAVT web/router.ex web/router.ex : 12 scope "/", ModestGreeter do 13 pipe_through :browser get "/", TopCont

GNU Emacs GNU Emacs

Express5800/320Fa-L/320Fa-LR

1. 自己紹介 2.Sinatra の概要 3.Rails との比較 4.workshop メニュー

離散数理工学 第 2回 数え上げの基礎:漸化式の立て方

1 122

(1/2) 2/45 HPC top runner application programmer PC-9801F N88-BASIC Quick BASIC + DOS ( ) BCB Windows Percolation, Event-driven MD ActionScript Flash

WDA-Slides-05.pptx

¥¤¥ó¥¿¡¼¥Í¥Ã¥È·×¬¤È¥Ç¡¼¥¿²òÀÏ Âè11²ó

FortiGate Ver.4.0MR3Patch14 Information 1

comp -MYPEDIA Programing- Ruby 1 attr_accessor :< 1>, :< 2> class Car def = carname end attr_accessor :name end car = Car.ne

Cisco Umbrella Branch Cisco Umbrella Branch Cisco ISR Umbrella Branch

Introduction Purpose This training course describes the configuration and session features of the High-performance Embedded Workshop (HEW), a key tool

Introduction Purpose The course describes library configuration and usage in the High Performance Embedded Workshop (HEW), which speeds development of

haskell.gby

mbed_library_study_meeting_v1.0.key

listings-ext

スライド 1

離散数理工学 第 2回 数え上げの基礎:漸化式の立て方

0.2 Button TextBox: menu tab 2

(Part-3) 3 Why? How Who How Worth Part-1? Whom Part-2 When Part-3? What? Which How Much Part-4 summary 2

Fortigate Ver.4.0MR3Patch12 Information 1

fx-9860G Manager PLUS_J

ストラドプロシージャの呼び出し方

明解Java入門編

Introduction Purpose This course explains how to use Mapview, a utility program for the Highperformance Embedded Workshop (HEW) development environmen

RHEA key


1: Preference Display 1 package sample. pref ; 2 3 import android. app. Activity ; 4 import android. content. Intent ; 5 import android. content. Shar

programmingII2019-v01

Ansible

ProVAL Recent Projects, ProVAL Online 3 Recent Projects ProVAL Online Show Online Content on the Start Page Page 13

SRX License

technews2012autumn

Kyosuke MOROHASHI

K227 Java 2

第10回 コーディングと統合(WWW用).PDF

コンピュータ概論

「消える」金融、「創る」金融-2010年のリテール金融

IP L09( Tue) : Time-stamp: Tue 14:52 JST hig TCP/IP. IP,,,. ( ) L09 IP (2017) 1 / 28

New version (2.15.1) of Specview is now available Dismiss Windows Specview.bat set spv= Specview set jhome= JAVA (C:\Program Files\Java\jre<version>\

Quick Sort 計算機アルゴリズム特論 :2017 年度 只木進一

parser.y 3. node.rb 4. CD-ROM

13 Student Software TI-Nspire CX CAS TI Web TI-Nspire CX CAS Student Software ( ) 1 Student Software 37 Student Software Nspire Nspire Nspir

161 Debian.Deb 銀河系唯一の Debian 専門誌 GO

スライド 1

Transcription:

GitHub Ruby 2549 2017 3 1

1 3 2 4 2.1 ruby novice........................... 4 2.2.............................. 6 3 8 3.1 ruby novice....................... 8 3.2 ruby novice............................ 8 3.3 ruby novice............................. 12 3.4 ruby novice.......................... 13 3.5 ruby novice............................ 14 3.6............................. 18 3.7........................... 18 4 21 4.1 aruba? (aruba vs test::unit)..................... 21 5 25 6 26 7 26 GitHub Ruby {{attach_anchor(ruby_novice_koki.pdf,ruby_novice_koki)}} 2

1 Ruby Ruby, [1]. Ruby Github Github Test (Test Driven Development:TDD) TDD (Red), (Green), (Refactoring) ruby novice Ruby novcie Ruby GitHub (ruby novice) Ruby. 4, aruba 3

2 2.1 ruby novice ruby novice 2.1.1 Github Github.Github., [2]. Github 1 Github. 4

1 Github 2.1.2 (git init, fork ) 1. 2. git remote -v: origin upstream 3. git add -A: local repository. 4. git commit: 5. git push origin master: Github origin master push. 6. pull request: Github (Github) 2.1.3 1., (Github) git push 2. git pull upstream master: :. :. :. (commit):. origin: (URL) master: (push):. 5

2.2 ruby novice 2.2.1 TDD (Test Driven Development) 2000 Test Driven Development, 10, 1. TDD Boot Camp, [3].,.,.,..,.. TDD,,., 2.,,. 2.2.2 test::unit Ruby xunit. Ruby1.8 Ruby,Ruby1.9.1 minitest. test-unit Ruby1.8,RSpec.,Ruby,.Ruby [4]. 6

2.2.3 aruba Aruba Cucumber,RSpec,Minitest TDD/BDD [5]. Ruby,,Python CLI Golang CLI..,read.,run, have output matcher.,leaking state... [5]. 7

3 ruby novice 1. ruby rubygems 2. github 3. aruba 3.1 ruby novice ruby novice GitHub Ruby Ruby Ruby Ruby 3.2 ruby novice ruby novice chap files.rb (chap1.rb, chap2.rb...) ruby novice.rb spec files.rb chap files.rb Text( Ruby). run = spec ruby novice.rb ruby novice.rb. Ruby 1 # ruby_novice. rb 2 3 $LOAD_PATH. unshift File. expand_path ("../../ lib /#{ ENV [ RUBYNOVICE_NAME ]}", FILE ) 4 begin 5 require " chap_files " 6 rescue LoadError 7 p " Load Error of ex_files in rubynovice.rb." 8

2 ruby novice 8 p File. expand_path ("../../ lib /#{ ENV [ RUBYNOVICE_NAME ]}", FILE ) 9 exit 10 end 11 12 require " ruby_novice / version " 13 require thor 14 # require " code " 15 16 module RubyNovice 17 # Your code goes here... 18 19 class CLI < Thor 20 # class_option : help, type : : boolean, aliases : -h, desc : help. 21 # class_option : debug, type : : boolean, aliases : -d, desc : debug mode 22 23 = begin 24 desc hello, print hello 25 def hello 26 my_hello 27 end 9

28 = end 29 30 desc my_helloruby, print helloruby 31 def my_helloruby 32 helloruby 33 end 34 35 desc my_puts_and_p, print puts_and_p 36 def my_puts_and_p 37 puts_and_p 38 end 39 40 desc my_kiritsubo, print kiritsubo 41 def my_kiritsubo 42 kiritsubo 43 end 44 45 desc my_area_volume, print area_volume 46 def my_area_volume 47 area_volume 48 end 49 50 desc my_ comment_ sample, print comment_sample 51 def my_ comment_ sample 52 comment_sample 53 end 54 55 desc my_ greater_ smaller, print greater_smaller 56 def my_ greater_ smaller 57 greater_smaller 58 end 59 60 desc my_greater_smaller_else, print greater_smaller_else 61 def my_ greater_ smaller_ else 62 greater_ smaller_ else 63 end 64 65 desc version, version 66 def version 67 puts RubyNovice :: VERSION 68 end 69 70 private 71 72 def output_ error_ if_ debug_ mode ( e) 73 return unless options [: debug ] 74 STDERR. puts (e. message ) 75 STDERR. puts (e. backtrace ) 76 end 77 end 78 end chap1 spec.rb. Ruby spec 10

code 1 # spec_chap1.rb 2 require spec_helper 3 4 RSpec. describe ruby_novie command, type : : aruba do 5 context version option, type : : version do 6 before (: each ) { run ( ruby_novice v ) } 7 it { expect ( last_ command_ started ). to be_ successfully_ executed } 8 it { expect ( last_ command_ started ). to have_output (" 0.1.0 ") } 9 end 10 11 context help option, type : : help do 12 expected = bundle exec exe / ruby_novice help 13 before (: each ) { run ( ruby_novice help ) } 14 it { expect ( last_ command_ started ). to be_ successfully_ executed } 15 # it { expect ( last_ command_ started ). to have_output ( expected ) } 16 end 17 18 = begin 19 context print hello, type : : hello do 20 before (: each ) { run ( ruby_novice hello ) } 21 expected = " Hello." 22 it { expect ( last_ command_ started ). to be_ successfully_ executed } 23 it { expect ( last_ command_ started ). to have_output ( expected ) } 24 end 25 = end 26 27 context helloruby, type : : helloruby do 28 before (: each ) { run ( ruby_novice my_helloruby ) } 29 expected = " Hello, Ruby." 30 it { expect ( last_ command_ started ). to be_ successfully_ executed } 31 it { expect ( last_ command_ started ). to have_output ( expected ) } 32 end 33 34 context puts_and_p, type : : puts_and_p do 35 before (: each ) { run ( ruby_novice my_puts_and_p ) } 36 expected = " Hello,\ n\ truby.\ n\" Hello,\n\ truby.\ "" 37 38 it { expect ( last_ command_ started ). to be_ successfully_ executed } 39 it { expect ( last_ command_ started ). to have_output ( expected ) } 40 end 41 42 context kiritsubo, type : : kiritsubo do 43 before (: each ) { run ( ruby_novice my_kiritsubo ) } 44 expected = " \ n \\ 45 " 46 47 it { expect ( last_ command_ started ). to be_ successfully_ executed } 48 it { expect ( last_ command_ started ). to have_output ( expected ) } 49 end 50 51 context area_volume, type : : area_volume do 52 before (: each ) { run ( ruby_novice my_area_volume ) } 53 expected = " =2200\ n =6000 " 11

54 55 it { expect ( last_ command_ started ). to be_ successfully_ executed } 56 it { expect ( last_ command_ started ). to have_output ( expected ) } 57 end 58 59 context greater_smaller, type : : greater_ smaller do 60 before (: each ) { run ( ruby_novice my_greater_smaller ) } 61 expected = " greater " 62 63 it { expect ( last_ command_ started ). to be_ successfully_ executed } 64 it { expect ( last_ command_ started ). to have_output ( expected ) } 65 end 66 67 68 context greater_ smaller_ else, type : : greater_ smaller_ else do 69 before (: each ) { run ( ruby_novice my_greater_smaller_else ) } 70 expected = " greater " 71 72 it { expect ( last_ command_ started ). to be_ successfully_ executed } 73 it { expect ( last_ command_ started ). to have_output ( expected ) } 74 end 75 end chap1 spec.rb spec helper.rb $LOAD PATH gem lib support directory RUBY version 1 # spec_helper. rb 2 $LOAD_PATH. unshift File. expand_path (../../ lib, FILE ) 3 require ruby_novice 4 # require aruba / rspec 5 $LOAD_PATH. unshift File. expand_path (../../ lib, FILE ) 6 7 if RUBY_VERSION < 1.9.3 8 :: Dir. glob (:: File. expand_path (../ support /*. rb, FILE )). each { f require File. join ( File. dirname (f), File. basename (f,.rb )) } 9 :: Dir. glob (:: File. expand_path (../ support /**/*. rb, FILE )). each { f require File. join ( File. dirname (f), File. basename (f,.rb )) } 10 else 11 :: Dir. glob (:: File. expand_path (../ support /*. rb, FILE )). each { f require_ relative f } 12 :: Dir. glob (:: File. expand_path (../ support /**/*. rb, FILE )). each { f require_ relative f } 13 end 3.3 ruby novice, Ruby 1 7 12

1 (list1.1 1.7): puts p 3 (list3.1 3.11): 4 (list4.1): 5 (list5.1 5.5): (if, unless ) 6 (list6.1 6.13): (for,times,while ) 7 (list7.1 7.4): 3.3.1 Ruby Rub (for,while ) 1 list5.3: unless.rb unless1.rb list5.4: case.rb case1.rb list6.4: for.rb for1.rb list6.6: while.rb while11.rb. list6.9: until.rb until1.rb list7.4: myloop.rb myloop1.rb 3.4 ruby novice 3 Ruby Red, Green 1. 2. Red ( ) 3. Green(Red ) 4. Green Red,Green,TDD, 4 5 13

3. 3.5 ruby novice 1. (koki). 2../lib/koki/chap files.rb. 3. chap files.rb require chap1. 4. chap1.rb, Ruby list(1.1 1.7) 5. rspec, RUBYNOVICE NAME (koki). (csh,tcsh)setenv RUBYNOVICE NAME koki (bash,zsh)export RUBYNOVICE NAME=koki 14

4 Green 1 #/ Users / Koki / ruby_novice % cat lib / koki / chap_files.rb 2 3 require " chap1 " 4 # require " chap3 " 5 # require " chap4 " 6 # require " chap5 " 7 # require " chap6 " 8 # require " chap7 " 9 10 ( ) # ( Ruby ) 1 #/ Users / Koki / ruby_novice % cat lib / koki / chap1.rb 2 3 def helloruby 4 print (" Hello, Ruby.\ n") 5 end 15

5 Red. 6 7 def puts_and_p 8 puts " Hello,\ n\ truby." 9 p " Hello,\ n\ truby." 10 end 11 12 def kiritsubo 13 print " \n" 14 print " \n" 15 end 16 17 def area_volume 18 x = 10 19 y = 20 20 z = 30 21 area = ( x* y + y* z + z* x) * 2 22 volume = x * y * z 23 print " =", area, "\n" 24 print " =", volume, "\n" 25 end 16

26 27 def comment_sample 28 = begin 29 Ruby 30 31 2006/06/16 32 2006/07/01 33 2015/10/01 34 = end 35 36 x = 10 # 37 y = 20 # 38 z = 30 # 39 # 40 area = ( x* y + y* z + z* x) * 2 41 volume = x * y * z 42 # 43 print " =", area, "\n" 44 print " =", volume, "\n" 45 end 46 47 def greater_smaller 48 a = 20 49 if a >= 10 then 50 print " greater \ n" 51 end 52 if a <= 9 then 53 print " smaller \ n" 54 end 55 end 56 57 def greater_ smaller_ else 58 a = 20 59 if a >= 10 60 print " greater \ n" 61 else 62 print " smaller \ n" 63 end 64 end 3.5.1 tag 1. grep type spec/ruby novice spec.rb context type. type 1 context version option, type : : version do 2 context help option, type : : help do 3 context print hello, type : : hello do 4 context helloruby, type : : helloruby do 5 context puts_and_p, type : : puts_and_p do 6 context kiritsubo, type : : kiritsubo do 7 context area_volume, type : : area_volume do 17

8 context comment_sample, type : : comment_sample do 9 context greater_smaller, type : : greater_ smaller do 10 context greater_ smaller_ else, type : : greater_ smaller_ else do 11 context print_argv, type : : print_argv do 12 context happy_birth, type : : happy_birth do 13 context arg_arith, type : : arg_arith do 14 context read_text, type : : read_text do 15 context read_ text_ simple, type : : read_ text_ simple do 16 context read_ text_ oneline, type : : read_ text_ oneline do 17 context read_line, type : : read_line do 18 context simple_grep, type : : simple_grep do 19 context hello_ruby2, type : : hello_ruby2 do 20 context use_grep, type : : use_grep do 21 context scopetest, type : : scopetest do 22 context ad2heisei, type : : ad2heisei do 23 context if_elsif, type : : if_elsif do 24 context unless1, type : : unless1 do 25 context case1, type : : case1 do 26 context case_class, type : : case_class do 27 context times, type : : times do 28 context times2, type : : times2 do 29 context times3, type : : times3 do 30 context for1, type : : for1 do 31 context for_names, type : : for_names do 32 context while1, type : : while1 do 33 context while2, type : : while2 do 34 context while3, type : : while3 do 35 context until1, type : : until1 do 36 context while_not, type : : while_not do 37 context each_names, type : : each_names do 38 context each, type : : each do 39 context break_next, type : : break_next do 40 context times_ with_ param, type : : times_ with_ param do 41 context hello_with_name, type : : hello_ with_ name do 42 context hello_ with_ default, type : : hello_ with_ default do 43 context myloop1, type : : myloop1 do 3.6 1. bundle exec rspec 3.7 : 1 (chap1). 1. bundle exec rspec spec/chap1 spec.rb 18

2. bundle exec rake chap 1 1 / Users / Koki / ruby_novice % bundle exec rake chap 1 2 3 ruby_novie command 4 version option 5 should be successfully executed 6 should have output : " 0.1.0 " 7 help option 8 should be successfully executed 9 helloruby 10 should be successfully executed 11 should have output : " Hello, Ruby." 12 puts_and_p 13 should be successfully executed 14 should have output : " Hello,\ n\ truby.\ n\" Hello,\n\ truby.\ "" 15 kiritsubo 16 should be successfully executed 17 should have output : " \ n " 18 area_volume 19 should be successfully executed 20 should have output : " =2200\ n =6000 " 21 comment_sample 22 should be successfully executed 23 should have output : " =2200\ n =6000 " 24 greater_smaller 25 should be successfully executed 26 should have output : " greater " 27 greater_ smaller_ else 28 should be successfully executed 29 should have output : " greater " 30 31 Finished in 7.61 seconds ( files took 1.03 seconds to load ) 32 17 examples, 0 failures 3.7.1 : (helloruby). 1. bundle exec rspec tag type:helloruby spec/ruby novice spec.rb (helloruby ) 2. bundle exec rake test name helloruby 1 / Users / Koki / ruby_novice % bundle exec rake test_name helloruby 2 Run options : include {: type =>" helloruby "} 3 4 ruby_novie command 5 helloruby 19

6 should be successfully executed 7 should have output : " Hello, Ruby." 8 9 Finished in 0.87128 seconds ( files took 0.81684 seconds to load ) 10 2 examples, 0 failures, grep type spec/ruby novice spec.rb type text ( puts and p.rb) 3.7.2 : helloruby 1. bundle exec exe/ruby novice my helloruby 2. bundle exec rake/output helloruby 1 / Users / Koki / ruby_novice % bundle exec rake output helloruby 2 Hello, Ruby. 20

4 4.1 aruba? (aruba vs test::unit) Cucumber,RSpec,Minitest TDD/BDD aruba test:unit aruba 4.1.1 test::unit Ruby Hello, Ruby print("hello, Ruby.\n"), Hello, Ruby 1 # helloruby.rb 2 3 def helloruby 4 return " Hello, Ruby.\ n" 5 end test::unit 1 require test / unit 2 require./ helloruby 3 4 class Test_Sample < Test :: Unit :: TestCase 5 def test_helloruby 6 assert_equal (" Hello, Ruby.\ n",helloruby ) 7 end 8 end 9 print (" Hello, ruby.\ n") Ruby test/unit gem require test/unit test/unit Test::Unit::TestCase test xxx, Test Sample test helloruby test 21

test helloruby test assert equal( ),( ).assert equal,. test xxx. 1 assert equal OK. 1 1 1 / Users / Koki / rubynovice / spec / test_unit / list1 % ruby test_helloruby.rb 2 Hello, ruby. 3 Loaded suite test_helloruby 4 Started. 5 6 Finished in 0.000982 seconds. 7 8 1 tests, 1 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 9 100% passed 10 11 1018.33 tests /s, 1018.33 assertions / s 4.1.2 test::unit Ruby return print return return Hello, Ruby. n test::unit print return aruba print text Ruby aruba 4.1.3 aruba Hello, Ruby 22

1 # code.rb 2 3 def helloruby 4 print (" Hello, Ruby.\ n") 5 end 1 # ruby_novice. rb 2 3 require thor 4 require " code.rb " 5 6 module RubyNovice 7 class CLI < Thor 8 desc my_helloruby, print helloruby 9 def my_helloruby 10 helloruby 11 end 12 end require thor code.rb thor gem Usage Message aruba print return 1 # ruby_novice_spec.rb 2 3 require spec_helper 4 5 RSpec. describe ruby_novie command, type : : aruba do 6 context helloruby, type : : helloruby do 7 before (: each ) { run ( ruby_novice my_helloruby ) } 8 expected = " Hello, Ruby." 9 it { expect ( last_ command_ started ). to be_ successfully_ executed } 10 it { expect ( last_ command_ started ). to have_output ( expected ) } 11 end 12 end run( ruby novice my helloruby ) ruby novice my helloruby. expected = Hello, Ruby.. test::unit expect(last command started).to be successfully executed status 0. expect(last command started).to have output(expected) contents, = 23

,. 24

5 aruba test::unit Ruby Ruby aruba aruba text code test::unit Ruby text( Ruby) return aruba text( Ruby) RUBYNOVICE NAME text text Class (8 ), TDD 25

6,,,.,,,,.. 7 [1 ] Ruby,,, http://www.shikoku-u.ac.jp/education/docs/ser. [2 ] GitHub,,https://kotobank.jp/word/GitHub-1725201 [3 ], [[http://www.atmarkit.co.jp/ait/articles/1403/05/news035_3.html. [4 ] test-unit - Ruby, https://test-unit.github.io/ja/ [5 ] QiitaAruba gem CLI, tbpgr, http://qiita.com/tbpgr/items/41730 26