[ruby-list:49739] test-unitで使用するテストケースを動的に生成したい
From:
古川大輔 <mogya99@...>
Date:
2014-01-24 14:03:29 UTC
List:
ruby-list #49739
=E3=80=80=E3=81=93=E3=82=93=E3=81=AB=E3=81=A1=E3=81=AF=E3=80=82=0A=E3=80=80=
=E4=BC=BC=E3=81=9F=E3=82=88=E3=81=86=E3=81=AA=E3=83=91=E3=82=BF=E3=83=BC=E3=
=83=B3=E3=81=AE=E3=83=86=E3=82=B9=E3=83=88=E3=82=92=E8=A4=87=E6=95=B0=E5=AE=
=9F=E6=96=BD=E3=81=99=E3=82=8B=E3=81=9F=E3=82=81=E3=81=AB=E3=80=81define_me=
thod=E3=81=A7=E3=83=86=E3=82=B9=E3=83=88=E3=82=92=E7=94=9F=E6=88=90=E3=81=
=97=E3=81=A6=E5=AE=9F=E8=A1=8C=E3=81=97=E3=81=9F=E3=81=84=E3=81=A8=E8=80=83=
=E3=81=88=E3=81=A6=E3=81=84=E3=82=8B=E3=81=AE=E3=81=A7=E3=81=99=E3=81=8C=E3=
=80=81=E3=81=86=E3=81=BE=E3=81=84=E3=81=93=E3=81=A8=E3=81=84=E3=81=8B=E3=81=
=AA=E3=81=84=E3=81=AE=E3=81=A7=E3=82=A2=E3=83=89=E3=83=90=E3=82=A4=E3=82=B9=
=E3=81=84=E3=81=9F=E3=81=A0=E3=81=91=E3=81=AA=E3=81=84=E3=81=A7=E3=81=97=E3=
=82=87=E3=81=86=E3=81=8B=EF=BC=9F=0A=0Arequire "test-unit"=0Aclass Search1 =
< Test::Unit::TestCase=0A =C2=A0class << self=0A =C2=A0 =C2=A0def startup=
=0A =C2=A0 =C2=A0 =C2=A0# _test_=E3=81=A7=E5=A7=8B=E3=81=BE=E3=82=8B=E3=83=
=A1=E3=82=BD=E3=83=83=E3=83=89=E3=82=92=E5=85=83=E3=81=AB=E5=90=84=E3=83=96=
=E3=83=A9=E3=82=A6=E3=82=B6=E3=81=AB=E5=AF=BE=E3=81=99=E3=82=8B=E3=83=86=E3=
=82=B9=E3=83=88=E3=82=92=E7=94=9F=E6=88=90=E3=81=99=E3=82=8B=0A =C2=A0 =C2=
=A0 =C2=A0STDERR.puts "[called]startup"=0A =C2=A0 =C2=A0 =C2=A0instance_met=
hods.grep(/^_test_/).each{|method_name|=0A =C2=A0 =C2=A0 =C2=A0 =C2=A0['bro=
wser1','browser2'].each{|browser|=0A =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0test=
_name =3D "%s_with_%s"%[method_name.to_s.sub('_',''),browser.to_s]=0A =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0STDERR.puts "[define]%s"%test_name=0A =C2=A0=
=C2=A0 =C2=A0 =C2=A0 =C2=A0define_method(test_name) {=0A =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0send(method_name,browser)=0A =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0}=0A =C2=A0 =C2=A0 =C2=A0 =C2=A0}=0A =C2=A0 =C2=A0 =C2=A0}=0A =
=C2=A0 =C2=A0end=0A =C2=A0end=0A =C2=A0def _test_search1(browser)=0A =C2=A0=
=C2=A0STDERR.puts "[test]%s with %s"%['search1',browser.to_s]=0A =C2=A0end=
=0A =C2=A0def test_default=0A =C2=A0 =C2=A0STDERR.puts "tests:%s"%self.meth=
ods.grep(/^test/).to_s=0A =C2=A0end=0Aend=0Agenerate_test=E5=86=85=E3=81=A7=
_test_=E3=81=A7=E5=A7=8B=E3=81=BE=E3=82=8B=E3=83=A1=E3=82=BD=E3=83=83=E3=83=
=89=E3=82=92=E5=88=97=E6=8C=99=E3=81=97=E3=81=A6=E3=80=81=E3=83=86=E3=82=B9=
=E3=83=88=E3=82=92=E5=8B=95=E7=9A=84=E7=94=9F=E6=88=90=E3=81=97=E3=82=88=E3=
=81=86=E3=81=A8=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=80=82=0A=0A=
=0A=E5=AE=9F=E9=9A=9B=E3=82=84=E3=81=A3=E3=81=A6=E3=81=BF=E3=82=8B=E3=81=A8=
=0A$ ruby -v=0Aruby 1.9.2p320 (2012-04-20 revision 35421) [x86_64-linux]=0A=
$ ruby pc/search.rb=0ALoaded suite pc/search=0AStarted=0A[called]startup=0A=
[define]test_search1_with_browser1=0A[define]test_search1_with_browser2=0At=
ests:[:test_default, :test_search1_with_browser1, :test_search1_with_browse=
r2]=0A.=0AFinished in 0.003118883 seconds.=0A1 tests, 0 assertions, 0 failu=
res, 0 errors, 0 pendings, 0 omissions, 0 notifications=0A100% passed=0A320=
.63 tests/s, 0.00 assertions/s=0A=0A=E3=81=A8=E3=81=84=E3=81=86=E3=81=93=E3=
=81=A8=E3=81=A7=E3=80=81=E3=83=86=E3=82=B9=E3=83=88=E3=81=AF=E7=94=9F=E6=88=
=90=E3=81=95=E3=82=8C=E3=81=A6=E3=81=84=E3=82=8B=E3=81=AE=E3=81=A7=E3=81=99=
=E3=81=91=E3=81=A9=E3=80=81=E5=AE=9F=E8=A1=8C=E3=81=97=E3=81=A6=E3=82=82=E3=
=82=89=E3=81=88=E3=81=AA=E3=81=84=E3=82=88=E3=81=86=E3=81=A7=E3=81=99=E3=80=
=82=0A=E3=81=A9=E3=81=93=E3=81=8B=E3=82=82=E3=81=86=E3=81=A1=E3=82=87=E3=81=
=A3=E3=81=A8=E6=97=A9=E3=81=84=E3=82=BF=E3=82=A4=E3=83=9F=E3=83=B3=E3=82=B0=
=E3=81=A7=E7=94=9F=E6=88=90=E3=81=99=E3=82=8B=E5=BF=85=E8=A6=81=E3=81=8C=E3=
=81=82=E3=82=8B=E3=81=AE=E3=81=8B=E3=81=A8=E6=80=9D=E3=81=86=E3=81=AE=E3=81=
=A7=E3=81=99=E3=81=91=E3=81=A9=E3=80=81initialize=E3=81=A7=E3=82=82=E3=83=
=80=E3=83=A1=E3=81=A0=E3=81=A3=E3=81=9F=E3=81=AE=E3=81=A7=E3=80=81=E3=81=A9=
=E3=81=86=E3=81=97=E3=81=9F=E3=82=82=E3=81=AE=E3=81=8B=E3=81=A8=E8=80=83=E3=
=81=88=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=80=82=0A=0A=EF=BC=83=E3=81=A1=
=E3=81=AA=E3=81=BF=E3=81=AB=E6=9C=80=E7=B5=82=E7=9A=84=E3=81=AB=E4=BD=95=E3=
=82=92=E3=81=97=E3=81=9F=E3=81=84=E3=81=8B=E3=81=A8=E3=81=84=E3=81=86=E3=81=
=A8=E3=80=81Selenium::WebDriver=E3=82=92=E4=BD=BF=E3=81=A3=E3=81=A6IE=E3=82=
=84FireFox=E3=81=AA=E3=81=A9=E8=A4=87=E6=95=B0=E3=81=AE=E3=83=96=E3=83=A9=
=E3=82=A6=E3=82=B6=E3=82=AA=E3=83=96=E3=82=B8=E3=82=A7=E3=82=AF=E3=83=88=E3=
=82=92=E7=94=9F=E6=88=90=E3=81=97=E3=80=81=E3=81=9D=E3=81=AE=E3=81=9D=E3=82=
=8C=E3=81=9E=E3=82=8C=E3=81=AB=E5=AF=BE=E3=81=97=E3=81=A6=E5=90=8C=E3=81=98=
=E3=83=86=E3=82=B9=E3=83=88=E3=82=92=E5=AE=9F=E6=96=BD=E3=81=97=E3=81=9F=E3=
=81=84=E3=81=A8=E8=80=83=E3=81=88=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=80=
=82=0A