AtCoder の問題ページからユニットテストを生成するブラウザ拡張機能 "AtCoder Unit Test" を大幅リニューアル!便利な新機能をいろいろ実装しました!
- テストコードのテンプレートが編集できるようになりました。
- テストコードの生成方法が変更になりました。
- Go, Ruby のテストコードを生成できるようになりました。
- (Python, Ruby) テストコードを含んだまま提出できるようになりました。 (例)
- (Java, Kotlin) テストライブラリが JUnit5 に変更になりました。
ダウンロードは ↓ から。ぜひご利用ください!!!
テンプレートが編集できるようになりました。
いままでは、こちらで用意したテンプレートでテストコードを生成していました。
しかし、タブ幅を変更するなどのカスタマイズがしたいという需要があることがわかりましたので、設定ページで自由にテンプレートを編集できるようにしました。
特に、Python の場合は後述するようにテストコードを含んだまま提出できますので、よく使うオリジナルの関数を入れてておくと便利です!
また、これにより C++ などのデフォルトのテンプレートにない言語でも対応できるようになりました。
テストコードの生成方法が変更になりました。
これだけでテストコードが生成できます!
- AtCoder の問題ページを開く
- 拡張機能の をクリック
また、このときに表示されるポップアップメニューから、設定画面を開けるようになりました。
(Python, Ruby) テストコードを含んだまま提出できるようになりました。
テストコードを含んで提出しているケースが見受けられたので、いっそのことそのまま提出しても AC するように Python, Ruby のテンプレートを変更しました。
ローカルでテストを実行するのは、これまで通り python3 Main.py
で OK です。1
ちなみに、Ptyhon では ATCODER
という環境変数があるかどうかで挙動(テストを動かすか解答するか)を切り替えています。
if __name__ == "__main__":
if "ATCODER" in os.environ:
resolve()
else:
unittest.main(verbosity=2)
ソースコード
ご意見やご要望はこの記事のコメント、または GitHub の Issues にどうぞ。
もちろん Pull Request も大歓迎です!
YujiSoftware/ac-unit-test - GitHub
ぜひご利用ください!
-
当初は
python3 -m unittest Main.py
だったのですが、このやり方だとわからないという意見が多数ありましたので、v3.1.0 からpython3 Main.py
でも動かせるように変更しました。 ↩