あなたも貢献できるかも知れない? CPAN Tester 御用達モジュール

こちらのブログを見て試してみました。これ知らんかったので使ってみたメモです。

とりあえず、cpanm Task::CPAN::Reporter します。結構依存関係多いみたいなのでここでこけるとレポートもできないという・・・
こけた場合、Net::SSLeay あたりを最新にしておくと良いです。

上記のように私は普段 cpanm を利用しているので、cpanm してこけたら ppm してみてそれでもダメなとき、
cpan シェルを利用してレポートするというのが良いのではないだろうか。

C:\Users\daisuke\git>cpan

cpan shell -- CPAN exploration and modules installation (v1.9600)
Enter 'h' for help.

cpan> o conf init test_report
The goal of the CPAN Testers project (http://testers.cpan.org/) is to
test as many CPAN packages as possible on as many platforms as
possible.  This provides valuable feedback to module authors and
potential users to identify bugs or platform compatibility issues and
improves the overall quality and value of CPAN.

One way you can contribute is to send test results for each module
that you install.  If you install the CPAN::Reporter module, you have
the option to automatically generate and deliver test reports to CPAN
Testers whenever you run tests on a CPAN package.

See the CPAN::Reporter documentation for additional details and
configuration settings.  If your firewall blocks outgoing traffic,
you may need to configure CPAN::Reporter before sending reports.

 
Generate test reports if CPAN::Reporter is installed (yes/no)? [no] yes

Would you like me configure CPAN::Reporter now? [yes]


Proceeding to configure CPAN::Reporter.

Some of the following configuration options require one or more "grade:action"
pairs that determine what grade-specific action to take for that option.
These pairs should be space-separated and are processed left-to-right. See
CPAN::Reporter documentation for more details.

    GRADE   :   ACTION  ======> EXAMPLES
    -------     -------         --------
    pass        yes             default:no
    fail        no              default:yes pass:no
    unknown     ask/no          default:ask/no pass:yes fail:no
    na          ask/yes
    default


CPAN::Reporter: no config file found; creating a new one.

CPAN::Reporter requires a valid email address to identify senders
in the body of a test report.  Please use a standard email format
like: "John Doe" 

email_from? [] "Daisuke Ota" 

Before test reports are sent, you may want to review or edit the test
report and add additional comments about the result or about your system
or Perl configuration.  By default, CPAN::Reporter will ask after
each report is generated whether or not you would like to edit the
report. This option takes "grade:action" pairs.

(Recommended: 'default:ask/no pass/na:no')

edit_report? [default:ask/no pass/na:no]

By default, CPAN::Reporter will prompt you for confirmation that
the test report should be sent before actually doing it. This
gives the opportunity to skip sending particular reports if
you need to (e.g. if you caused the failure). This option takes
"grade:action" pairs.

(Recommended: 'default:ask/yes pass/na:yes')

send_report? [default:ask/yes pass/na:yes]

CPAN::Reporter sends your reports over HTTPS using Metabase. This option lets
you set a different uri, transport mechanism and metabase profile path. If you
are receiving HTTPS errors, you may change the uri to use plain HTTP, though
this is not recommended. Unless you know what you're doing, just accept
the default value.

(Recommended: 'Metabase uri https://metabase.cpantesters.org/api/v1/ id_file metabase_id.json')

transport? [Metabase uri https://metabase.cpantesters.org/api/v1/ id_file metabase_id.json]

Would you like to run 'metabase-profile' now to create 'C:\Users\daisuke\.cpanreporter\metabase_id.json'? [y]
Running [C:\STRAWB~1\perl\site\bin\metabase-profile.BAT --output C:\Users\daisuke\.cpanreporter\metabase_id.json --email [email protected] --name Daisuke Ota -
-secret 12345678]...
Writing profile to 'C:\Users\daisuke\.cpanreporter\metabase_id.json'

CPAN::Reporter: writing config file to 'C:\Users\daisuke\.cpanreporter\config.ini'.

Returning to CPAN configuration.

commit: wrote 'C:\strawberry\perl\lib/CPAN/Config.pm'

cpan>

よし、準備完了っぽい。一発目いってみよーw

C:\Users\daisuke\git>cpan Selenium::Remote::Driver
CPAN: CPAN::SQLite loaded ok (v0.199)
Database was generated on Sat, 07 Jun 2014 10:27:44 GMT
Running install for module 'Selenium::Remote::Driver'
Running make for G/GE/GEMPESAW/Selenium-Remote-Driver-0.2001.tar.gz
CPAN: Digest::SHA loaded ok (v5.61)
CPAN: Compress::Zlib loaded ok (v2.034)
Checksum for C:\strawberry\cpan\sources\authors\id\G\GE\GEMPESAW\Selenium-Remote-Driver-0.2001.tar.gz ok
CPAN: Archive::Tar loaded ok (v1.76)
CPAN: File::Temp loaded ok (v0.22)
CPAN: Parse::CPAN::Meta loaded ok (v1.4401)
CPAN: CPAN::Meta loaded ok (v2.110930)
CPAN: Module::CoreList loaded ok (v2.46)

  CPAN.pm: Going to build G/GE/GEMPESAW/Selenium-Remote-Driver-0.2001.tar.gz

CPAN: CPAN::Reporter loaded ok (v1.2011)
Checking if your kit is complete...
Looks good
Writing Makefile for Selenium::Remote::Driver
(C:\strawberry\perl\bin\perl.exe Makefile.PL exited with 0)
CPAN::Reporter: Makefile.PL result is 'pass', No errors.
cp lib/Test/Selenium/Remote/WebElement.pm blib\lib\Test\Selenium\Remote\WebElement.pm
cp lib/Selenium/Remote/Driver.pm blib\lib\Selenium\Remote\Driver.pm
cp lib/Selenium/Remote/Commands.pm blib\lib\Selenium\Remote\Commands.pm
cp lib/Selenium/Remote/ErrorHandler.pm blib\lib\Selenium\Remote\ErrorHandler.pm
cp driver-example.pl blib\lib\Selenium\Remote\driver-example.pl
cp lib/Selenium/Remote/WDKeys.pm blib\lib\Selenium\Remote\WDKeys.pm
cp lib/Selenium/Remote/Driver/Firefox/Profile.pm blib\lib\Selenium\Remote\Driver\Firefox\Profile.pm
cp lib/Selenium/Remote/RemoteConnection.pm blib\lib\Selenium\Remote\RemoteConnection.pm
cp lib/Test/Selenium/Remote/Role/DoesTesting.pm blib\lib\Test\Selenium\Remote\Role\DoesTesting.pm
cp lib/Selenium/Remote/WebElement.pm blib\lib\Selenium\Remote\WebElement.pm
cp lib/Test/Selenium/Remote/Driver.pm blib\lib\Test\Selenium\Remote\Driver.pm
(C:\strawberry\c\bin\dmake.EXE exited with 0)
CPAN::Reporter: dmake result is 'pass', No errors.
  GEMPESAW/Selenium-Remote-Driver-0.2001.tar.gz
  C:\strawberry\c\bin\dmake.EXE -- OK
CPAN: YAML loaded ok (v0.84)
Running make test
C:\strawberry\perl\bin\perl.exe "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib\lib', 'blib\arch')" t/*.t

#   Failed test 'use Selenium::Remote::Driver;'
#   at t/00-load.t line 8.
#     Tried to use 'Selenium::Remote::Driver'.
#     Error:  Invalid builder for Selenium::Remote::ErrorHandler->STATUS_CODE - not a valid method name at C:/strawberry/perl/site/lib/Method/Generate/Accessor.
pm line 39.
# Compilation failed in require at C:\strawberry\cpan\build\Selenium-Remote-Driver-0.2001-XZc3T3\blib\lib/Selenium/Remote/RemoteConnection.pm line 14.
# BEGIN failed--compilation aborted at C:\strawberry\cpan\build\Selenium-Remote-Driver-0.2001-XZc3T3\blib\lib/Selenium/Remote/RemoteConnection.pm line 14.
# Compilation failed in require at C:\strawberry\cpan\build\Selenium-Remote-Driver-0.2001-XZc3T3\blib\lib/Selenium/Remote/Driver.pm line 20.
# BEGIN failed--compilation aborted at C:\strawberry\cpan\build\Selenium-Remote-Driver-0.2001-XZc3T3\blib\lib/Selenium/Remote/Driver.pm line 20.
# Compilation failed in require at t/00-load.t line 8.
# BEGIN failed--compilation aborted at t/00-load.t line 8.

#   Failed test 'use Test::Selenium::Remote::Driver;'
#   at t/00-load.t line 9.
Bailout called.  Further testing stopped:  not ok 2 - use Test::Selenium::Remote::Driver;
#     Tried to use 'Test::Selenium::Remote::Driver'.
#     Error:  Invalid builder for Test::Selenium::Remote::WebElement->func_list - not a valid method name at C:/strawberry/perl/site/lib/Method/Generate/Accesso
r.pm line 39.
# Compilation failed in require at C:\strawberry\cpan\build\Selenium-Remote-Driver-0.2001-XZc3T3\blib\lib/Test/Selenium/Remote/Driver.pm line 5.
# BEGIN failed--compilation aborted at C:\strawberry\cpan\build\Selenium-Remote-Driver-0.2001-XZc3T3\blib\lib/Test/Selenium/Remote/Driver.pm line 5.
# Compilation failed in require at t/00-load.t line 9.
# BEGIN failed--compilation aborted at t/00-load.t line 9.
# Looks like you failed 2 tests of 3.
FAILED--Further testing stopped: not ok 2 - use Test::Selenium::Remote::Driver;
dmake.EXE:  Error code 130, while making 'test_dynamic'
(C:\strawberry\c\bin\dmake.EXE test exited with 65280)
CPAN::Reporter: Test result is 'fail', Bailed out of tests.
CPAN::Reporter: preparing a CPAN Testers report for Selenium-Remote-Driver-0.2001
Do you want to review or edit the test report? (yes/no) [no]
Do you want to send the report? (yes/no) [yes]
CPAN::Reporter: sending test report with 'fail' via Metabase
  GEMPESAW/Selenium-Remote-Driver-0.2001.tar.gz
  C:\strawberry\c\bin\dmake.EXE test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
  reports GEMPESAW/Selenium-Remote-Driver-0.2001.tar.gz
Running make install
  make test had returned bad status, won't install without force

C:\Users\daisuke\git>

ちなみに、reports GEMPESAW/Selenium-Remote-Driver-0.2001.tar.gz と cpan シェルから入力するとレポートを確認できるようだ。
上手く動作しなかったが。。

cpan> reports GEMPESAW/Selenium-Remote-Driver-0.2001.tar.gz
Distribution: G/GE/GEMPESAW/Selenium-Remote-Driver-0.2001.tar.gz
Fetching 'http://www.cpantesters.org/show/Selenium-Remote-Driver.yaml'...DONE

Catching error: "CPAN::Exception::yaml_process_error=HASH(0x65207ac)" at C:/strawberry/perl/lib/CPAN.pm line 391.
        CPAN::shell() called at C:/strawberry/perl/lib/App/Cpan.pm line 295
        App::Cpan::_process_options('App::Cpan') called at C:/strawberry/perl/lib/App/Cpan.pm line 364
        App::Cpan::run('App::Cpan') called at C:\strawberry\perl\bin/cpan line 8

cpan>
スポンサーリンク

シェアする

フォローする

スポンサーリンク