Fight the Future

Java言語とJVM、そしてJavaエコシステム全般にまつわること

IT勉強会での初プレゼンなどお助けします!

勉強会でスピーカーをやりたいけど、プレゼンが初めて、苦手という方に無償でコーチできます。スライドのレビューや録画したリハへのアドバイスなどなど。Twitter@jyukutyoまでメンションでもDMでもお気軽にご連絡ください。

私はIT講師の経験があり、プレゼンはデブサミやJJUG CCCなど200人規模の経験が豊富で最大800人の前でプレゼンしました。海外ではDevoxxUSで。デブサミ2017では公募スピーカー1位、デブサミ関西2012アワードで5位となりました。

TestNG eclipseプラグインでのリスナークラス登録の続き

TestNGプラグインのリスナーより順序を前で自分のリスナーを登録したい - Fight the Future じゅくのblogで困っているわけだけど、
こりゃTestNGのソースを変えないと無理かもしれないなあ。


TestNGeclipseプラグインはTestNGクラスではなくサブクラスのRemoteTestNGクラスを使ってリモート実行してる。
そのRemoteTestNGクラスのstaticネストクラス*1がこれ。

private static class DelegatingTestRunnerFactory implements ITestRunnerFactory {
    public TestRunner newTestRunner(ISuite suite, XmlTest test) {
      TestRunner tr= m_delagateFactory.newTestRunner(suite, test);
      tr.addListener(new RemoteMessageSenderTestListener(suite, test, m_messageSender));

      return tr;
    }
  }

TestRunner#addLisnter()で真っ先にRemoteMessageSenderTestListenerクラスをとうろくしちゃってる。
つまりリモートであるeclipseプラグインのUIが一番先に変わってしまう問題は解決できない。


んー、TestNGのリスナーに優先順位をつけれたらいいのになあ。

*1:インナークラスじゃない[http://d.hatena.ne.jp/jyukutyo/20061020/1161314906:title]