テスト
ruby.wasmのテストコードを書いていました。 PlaywrightでHTTPリクエストをMockしているスクリーンショット cdn.jsdriver.netへのリクエストをMockして、レスポンスの内容をローカルファイルに置き換えています。 リダイレクトしたあとはMockできていないス…
NUnitのテストの命名規則をどうするとわかりやすくなるのか悩ましいのでまとめてみます。 describe と context がない NUnitにはRSpecとちがいdescribeとcontextに相当する機能がありません。 NUnitの公式のサンプルコードを見てみましょう。 https://github…
speakerdeck.com 自分がパラメタライズドテストの存在を知ったのは #TestingFrameworkMeeting に参加しました(1) - テスティングフレームワークの歴史 - @ledsun blog の頃だと思います。 読み返してみても一文字も出てこないので、記憶違いかもしれませ…
GitHub - tomykaira/rspec-parameterized: RSpec::Parameterized supports simple parameterized test syntax in rspec.を使ってみます。 require 'rspec-parameterized' require './fizzbuzz' describe 'FizzBuzz' do using RSpec::Parameterized::TableSyn…
素直な気持ちで書くとexpect(fizzbuzz 1).to eq '1'に似た文がたくさん出てきます。 DRYにしたくなったので、テストデータをテーブルで定義してグルグルっとアサーションを回します。 require './fizzbuzz' describe 'FizzBuzz' do it do [ [0, ''], [1, '1'…
「1から100までの数に対して3で割り切れる数はFIZZ、5で割り切れる数はBUZZ、 3でも5でも割り切れる数はFIZZBUZZと表示する。それ以外の数は数字のまま表示する。」 describe 'FizzBuzz' do context '数が1より小さいとき' do it { expect(fizzbuzz 0).to eq…
Parameterized Test at XUnitPatterns.com At least one member of the xUnit family implements Parameterized Test at the Test Automation Framework(page X) level: MbUnit. Extensions are becoming available for other members of the family with DD…
社内向けにパラメタライズドテストを紹介するときにこんなストーリーで話そうかな?と考えたトークスクリプトの導入部分です。 今日はパラメタライズドテストを紹介します。 パラメタライズドテストとは何かというとテストコードの書き方です。名前がかっこ…
test/test_hlelper.rbで次のように設定してもヘッドレスモードになってくれませんでした。 Capybara.default_driver = :selenium_chrome_headless Capybara.register_driver :selenium_chrome_headless do |app| options = Selenium::WebDriver::Chrome::Opt…
WSLとselenium-webdriver - @ledsun blog の続きです。 WSLからWindowsのChromeを動かそうとしました。 起動までは上手く来ました。 WSLからWindows上のChromeへの接続に失敗しました。 今回は、WSL上にChromeをインストールすれば問題なく動くだろうと試し…
RailsのシステムテストをWSLで実行しようと、軽い気持ちで初めてみました。 意外と難しいです。 ポイント次の2点です WindowsのホストOSのChromeを動かそうとすると、ホストはlocalhostでは参照できない (GUIのない)WSLのChromeを動かそうとするときは、ヘ…
WebアプリケーションをiPadでデバッグしています。 Webアプリケーションを実行している開発PCに振られているIPアドレスが変わったときに、昨日デバッグに使ったタブを開いて アドレスバーの http://192.168.1.48:8000/dist/demo/development.html を http://…
Railsのバージョンを上げようと思って、3年ぶりくらいにRails 4.2のアプリケーションに触りました。 テストコードがあるのですが、test-unitです。 この組み合わせを触るのが久しぶりなので苦戦しました。 コミットログを見る限り、3年前に自分でテストコー…
開発中のWebアプリケーションのテストのiPadのSafariで開きたいです。 Webアプリケーションを動かしているMacBook ProにはDHCPでIPアドレスを設定しているためIPアドレスが変わります。 IPアドレスが変わると、iPadのSafariのアドレスバーのIPアドレスを変更…
RSpecMockで見慣れないエラーが起こせました。 再現コードをメモります。 class Repository; end RSpec.describe do it do expect(Repository).to receive(:doc).and_yield(nil) Repository.doc {} end end 実行すると ~ rspec spec.rb F Failures: 1) shoul…
「忍者式テストの定義が知りたい」という意見を観測しました。 実践者の一人として、現時点の理解を記録します。 簡単に言うと? どういうときに向いている? どうやって実施する? 準備 最新のプロダクトをユーザー(の立場)で操作できる環境 手動テスト項…
d.hatena.ne.jp 椎葉さんの発表がぐっときた すごかった。 「失敗したチームメンバーがいた時に、笑ったらいかんよ」と説明すると言っていました。 「そこまでやるのか。やると意味があるのは想像できるけど、自分ではできない」という意味ですごかったです…
参加した時のメモです。 t-wadaさん Testing Framwork Meeting テスティングフレームワークの歴史 http://www.slideshare.net/everzet/bdd-in-symfony2/42 のスライドがベース。 有史以前 make checkのように、テストを自動化する風習はあった。 開発者はそ…
咳マニアの集うイベント とてか03 にて発表してきました。 発表は「忍者式テスト」についてです。 忍者式テストは2004年頃に咳さんが発表されてから(咳さんチーム以外の)実施者が一人しか観測されていないテスト(開発?)手法です。 私が忍者式テストに取…
忍者式テストを二週間くらいやってみた感想です。 忍者式を見習って毎日一時間手動受け入れテストの時間を確保してみた。「受け入れテストを徐々に増やしていく」感覚が新鮮。「受け入れテストはテストフェーズの最初に一度に作るもの」は思い込みだった。— …
James O Coplien のWhy Most Unit Testing is wasteより 最後のまとめを和訳 ツッコミ大歓迎。 Keep regression tests around for up to a year — but most of those will be system-level tests rather than unit tests. 回帰テストを一年間続けよう。ただ…
QUnitとは JavaScript用のTestingFrameworkです。 由来 jQueryのテスト用に作られ、今もjQuery、jQuery-UIのテストに使われています。 それ自体はjQueryに依存していませんが、テスト内でDOMを操作したりイベントを生成したりするのにjQueryを使うと便利です…