0

申し訳ありませんが、私は英語が苦手ですが、この質問を最善の方法で表現しようとします.

要件: テスト ユーザーがセレン テストを実行するための特定のコントロールを含む HTML ファイルがあります。

例 : CAR、HOTEL、RAIL、FLIGHT、および環境の詳細 (DEV、QA、PROD) などの 4 つのモジュールがあります。ユーザーが DEV 環境で CAR モジュールを実行したい場合は、HTML ページから同じものを選択できます。

ユーザーが RUN ボタンを選択してクリックすると、コマンド ファイルが実行され、ユーザーの選択に基づいて、Selenium テストが起動し、TESTNG.xml を介して実行されます。

Selenium についてはまったくの初心者です。TESTNG XML を構成する方法と、テスト クラスでテスト スイートを制御する方法がわかりません。

私の場合、PROD 環境で FLIGHT テストを実行する場合、TESTNG XML でどのような構成を行う必要があるか、および FLIGHT のテスト セットを呼び出す方法を説明します。

2 番目のケースとして、PROD で 4 つのモジュールすべてを実行したい場合、TESTNG XML と CAR、FLIGHT、HOTEL、RAIL テストのテスト スイートの構成は何ですか?

これらすべてを、Eclipse を開かずにコマンド プロンプトで実行したいと考えています。

4

2 に答える 2

1
  1. まず、TestNg XML ファイルのパラメーターを確認する必要があります
  2. 次に、構成ファイルリーダーから詳細を取得できるテストの前にそれらを構成する必要があります
  3. プロパティファイルを介してパラメーターの詳細を構成ファイルリーダーに渡す必要があります

以下の例を見つけてください

これは、パラメータを渡したいtestng xmlファイルです

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" parallel="false" thread-count="6" verbose="1">
    <!--Values Chrome Firefox HLChrome HLFirefox HTMLUnit phantomJS-->
    <parameter name="browser" value="Chrome"/>

    <!--Values QA_URL DEV_URL PROD_URL-->
    <parameter name="URL" value="QA_URL"/>

    <!--Values QA Dev Uat Prod -->
    <parameter name="Env" value="QA"/>

    <test name="Add Client">
        <classes>
            <class name="tests.client.AddUser_Valid"/>
        </classes>
    </test>
</suite>

これは、パラメータの詳細を取得できる方法です

@BeforeTest
@Parameters({"browser","URL","Env"})
public void setupBrowserAndURL(String browser,String URL,String Env)  {
 if(Env.equalsIgnoreCase("QA")){
            if(URL.equalsIgnoreCase("QA_URL")){
                driver.get(configFileReader.applicationUrl_QA());
                commonOperations.waitUntilPageLoaded(driver);
}

プロパティファイルから詳細を取得するには、構成ファイルリーダーを追加する必要があります

public String applicationUrl_QA_URL() {
        String applicationUrl = properties.getProperty("applicationUrl_QA");
        if(applicationUrl != null) return applicationUrl;
        else throw new RuntimeException("url not specified in the Configuration.properties file.");
    }

    public String applicationUrl_Dev_URL() {
        String applicationUrl = properties.getProperty("applicationUrl_Demo");
        if(applicationUrl != null) return applicationUrl;
        else throw new RuntimeException("url not specified in the Configuration.properties file.");
    }

プロパティファイルに URL を追加する必要があります

applicationUrl_QA = http://xxxx.qa.xxxx.cloud applicationUrl__Demo = http://xxxx.demo.xxxx.cloud

于 2019-09-05T05:50:40.163 に答える