namespace SeleniumTests { [TestFixture] public class Login { private IWebDriver driver; private StringBuilder verificationErrors; private string baseURL; private bool acceptNextAlert = true; [SetUp] public void SetupTest() { driver = new FirefoxDriver(); baseURL = "URL"; verificationErrors = new StringBuilder(); } [TearDown] public void TeardownTest() { try { driver.Quit(); } catch (Exception) { // Ignore errors if unable to close the browser } Assert.AreEqual("", verificationErrors.ToString()); } [Test] public void TheLoginTest() { driver.Navigate().GoToUrl(baseURL + "/login"); driver.FindElement(By.Name("username")).Clear(); driver.FindElement(By.Name("username")).SendKeys("USERNAME"); driver.FindElement(By.Name("password")).Clear(); driver.FindElement(By.Name("password")).SendKeys("PASSWORD"); driver.FindElement(By.XPath("http://button[@type='submit']")).Click(); } } }
上面是用selenium ide 錄制的某個(gè)頁面的登錄操作代碼。像是輸入用戶名和密碼的代碼就有點(diǎn)重復(fù)多余繁瑣,那就可以封裝一個(gè)叫SendKeys的方法(包括clear和sendkeys的動(dòng)作),而不需要每次去找這個(gè)element,先clear,然后再重復(fù)去找這個(gè)element再sendkeys。類似這種常用的操作都可以封裝起來,放在一個(gè)Common類里(Common項(xiàng)目)而一些操作case放在另外的項(xiàng)目中。下面就是對(duì)上述例子進(jìn)行封裝操作。
10多年的豐縣網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。全網(wǎng)營銷推廣的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整豐縣建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“豐縣網(wǎng)站設(shè)計(jì)”,“豐縣網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。namespace TestSelenium.Test { [TestFixture] class Test { TestSelenium.Common.Common Testcorde = new Common.Common(); [SetUp] public void Setup() { Testcorde.SetupTest(); } [TearDown] public void TearDown() { Testcorde.TeardownTest(); } [Test] public void Test01() { Testcorde.TheLoginTest("URL","USERNAME","PASSWORD" ); } } }
上面Test01就是登錄操作的case,TheLoginTest(string baseurl, string username, string password)就是整個(gè)登錄操作的方法。像是SetupTest、TeardownTest、SendKeys、Click、TheLoginTest都放在下面的Common類下。
namespace TestSelenium.Common { public class Common { public IWebDriver driver; public void SetupTest() { driver = new InternetExplorerDriver(@"C:/AUTO"); driver.Manage().Window.Maximize(); } public void TeardownTest() { driver.Quit(); } public void SendKeys(By by, string Message) { driver.FindElement(by).Clear(); driver.FindElement(by).SendKeys(Message); } public void Click(By by) { driver.FindElement(by).Click(); } public void TheLoginTest(string baseurl, string username, string password) { driver.Navigate().GoToUrl(baseurl + "/login"); SendKeys(By.Name("username"),username); SendKeys(By.Name("password"), password); Click(By.XPath("http://button[@type='submit']")); } } }
ps.Common項(xiàng)目為類庫輸出類型,case項(xiàng)目需要引用Common項(xiàng)目并且保持都是ANYCPU生成。
分享標(biāo)題:Webdriver(selenium2.0)+NUnit+C#(二)-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://www.muchs.cn/article12/dsjedc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、自適應(yīng)網(wǎng)站、移動(dòng)網(wǎng)站建設(shè)、關(guān)鍵詞優(yōu)化、網(wǎng)站內(nèi)鏈、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容