私は CasperJS を初めて使用し、テスト スイートの作成を開始しました。一部の手順 (アプリケーションへのログインなど) は再利用が多いため、ライブラリ ファイル (テスト ファイルに含まれています) で管理したいと考えています。
さらに、複数の環境 (開発、統合、本番など) を実行しているため、このためのテスト手順をパラメーター化する必要があるため、モジュールにパラメーターを渡すことが可能になります。
ドキュメントとスタックオーバーフローを検索しました (同様の質問があることは承知しています) が、私の Javascript スキルは明らかに限定的であり、これを起動して実行することができませんでした。
これは私のテストファイルの例です:
// googletesting.js
casper.test.begin('Google search retrieves 10 or more results', 5, function suite(test) {
casper.start("http://www.google.fr/", function() {
test.assertTitle("Google", "google homepage title is the one expected");
test.assertExists('form[action="/search"]', "main form is found");
this.fill('form[action="/search"]', {
q: "casperjs"
}, true);
});
casper.then(function() {
test.assertTitle("casperjs - Recherche Google", "google title is ok");
test.assertUrlMatch(/q=casperjs/, "search term has been submitted");
test.assertEval(function() {
return __utils__.findAll("h3.r").length >= 10;
}, "google search for \"casperjs\" retrieves 10 or more results");
});
casper.run(function() {
test.done();
});
});
そして、これはどのように(または同様に)あるべきかです:
// googletesting2.js
casper.test.begin('Google search retrieves 10 or more results', 5, function suite(test) {
doGoogleSearch('casperjs'); // pass a search term
doChecks();
casper.run(function() {
test.done();
});
});