を使用した Web アプリケーションのテストの自動化 Selenium 自動テスト開発者の間で共通のソリューション C# これは最も人気のあるプログラミング言語の XNUMX つであるため、これらのツールを組み合わせても問題はありません。 これらのテクノロジを使用して開発するには、Windows 用の Microsoft の人気のある独自ソフトウェアがよく使用されますが、このタスクでは Selenium + C# スタックから離れることなく、どのような無料の類似物を使用できるかに興味がありました。
このトピックに関するロシア語の記事が見つからないため、Linux 上の C# で自動テストを開発およびデバッグするための環境をセットアップした経験を共有します。
使用した OS は、Linux カーネル 18.04-64-generic を搭載した Kubuntu 4.15.0 99 ビットで、次からダウンロードした ISO イメージからインストールしました。
Mono JIT コンパイラー バージョン 6.6.0.166 は、C# の CLR として機能しました。 そのインストールは、ターミナル (Kubuntu では Konsole) にコマンドを順番にコピーして実行することで構成されます。
IDEとして使用されます
Selenium は多くのブラウザをサポートしていますが、私はすべてを気にするのが面倒だったので、次のブラウザに限定しました。 クロムああ、インストールしました
次に、MonoDevelop でソリューションを作成します。
- MonoDevelop を起動する
- 「ファイル」メニューに移動します
- 「ソリューションの作成」を選択します
- 「.NET」をクリックします
- 「NUnitライブラリプロジェクト」を選択し、「次へ」をクリックします。
- ソリューションの名前とパスを指定し、「作成」をクリックします。
ブラウザーを制御するには、いくつかの NuGet パッケージも必要です。
- 「プロジェクト」メニューに移動し、「NuGetパッケージの追加」を選択します。
- Selenium.WebDriver パッケージを探してインストールします
- Selenium.WebDriver.ChromeDriver パッケージを探してインストールします
これですべてです。残っているのは、すべてが正しく構成されていることを確認するコードを記述することだけです。 ソリューションを作成すると、テスト メソッド Test.cs のファイルが自動的に作成され、そのファイルに次の数行のコードを追加します。
using NUnit.Framework;
using System;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium;
namespace SeleniumTests
{
[TestFixture()]
public class Test
{
[Test()]
public void TestCase()
{
IWebDriver driver = new ChromeDriver();
driver.Navigate().GoToUrl("http://habr.com/");
Assert.IsTrue(driver.Url.Contains("habr.com"), "Что-то не так =(");
driver.Quit();
}
}
}
テストは「単体テスト」タブから起動しますが、表示されていない場合は「表示」メニューから「テスト」を選択してください。
自動化が成功しました =)
出所: habr.com