2010-05-20 53 views
1

我有一個使用硒RC對我們的UI進行測試的Nunit測試。我想針對2個不同的服務器運行測試,這意味着使用兩臺不同的服務器調用selenium.open()。但是,我不希望有兩種不同的Nunit測試套件可以做同樣的事情,但是針對不同的服務器。我需要一種從Nant或Nunit驅動程序傳遞參數到特定哪個服務器進行測試的方法。如何讓Nunit針對不同的服務器運行硒測試?

有沒有辦法做到這一點?

+0

我想過一個方法,任何人都可以給我更好的解決方案嗎?基本上我有不同版本的app.config文件用於不同的服務器。在Nant構建腳本中,我將不同版本的文件複製到app.config(例如app.test.config - > app.config)。在app.config內部,我有不同的基本Url在nunit測試中用作appsetting。 – jaffa 2010-05-25 12:38:06

回答

0

如果您希望針對兩臺服務器運行相同的測試,最新版本的NUnit支持帶參數的測試。你可以包括這樣的服務器參數你的測試:

[TestFixture] 
public class MyTestFixture 
{ 
    public string[] Servers = new string[] { "server1.address", "server2.address" }; 

    [Test] 
    public void SomeTest([ValueSource("Servers")] server) 
    { 
     ISelenium selenium = new DefaultSelenium(server, 4444, "*firefox", "http://localhost"); 
     //rest of test 
    } 
} 

當NUnit的執行,這個測試將被運行兩次:一次是與「server1.address」參數,一旦與「server2.address」參數。你可以在這裏閱讀ValueSource測試:http://www.nunit.org/index.php?p=valueSource&r=2.5.5

相關問題