AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當(dāng)前位置:首頁(yè) > 科技  > 軟件

基于IntelliJ IDEA,輕松實(shí)現(xiàn)Selenium自動(dòng)化測(cè)試

來(lái)源: 責(zé)編: 時(shí)間:2023-11-16 09:40:04 342觀看
導(dǎo)讀新手測(cè)試工程師剛開始接觸到各種大量的測(cè)試領(lǐng)域?qū)I(yè)術(shù)語(yǔ)時(shí)通常會(huì)感到很困惑。本文內(nèi)容將幫助新手測(cè)試工程師快速入門并理解這些術(shù)語(yǔ)的含義。文章提供示例和實(shí)際應(yīng)用場(chǎng)景,以便讀者能夠更好地理解。在本文中,使用的以下環(huán)

新手測(cè)試工程師剛開始接觸到各種大量的測(cè)試領(lǐng)域?qū)I(yè)術(shù)語(yǔ)時(shí)通常會(huì)感到很困惑。evY28資訊網(wǎng)——每日最新資訊28at.com

本文內(nèi)容將幫助新手測(cè)試工程師快速入門并理解這些術(shù)語(yǔ)的含義。文章提供示例和實(shí)際應(yīng)用場(chǎng)景,以便讀者能夠更好地理解。evY28資訊網(wǎng)——每日最新資訊28at.com

在本文中,使用的以下環(huán)境:evY28資訊網(wǎng)——每日最新資訊28at.com

  • IDE: IntelliJ IDEA
  • 編程語(yǔ)言: Java
  • 瀏覽器和操作系統(tǒng): Mac 上的 Chrome
  • 自動(dòng)化工具: WebDriver + chromedriver

1 基礎(chǔ)知識(shí)

Selenium WebDriver是一種工具,用于自動(dòng)執(zhí)行手動(dòng)瀏覽器工作流。它可以是你厭倦了多次填寫的簡(jiǎn)單表格,也可以是驗(yàn)證數(shù)百個(gè)網(wǎng)頁(yè)的復(fù)雜系統(tǒng)。evY28資訊網(wǎng)——每日最新資訊28at.com

這里的思路是加載特定的網(wǎng)頁(yè),執(zhí)行操作,并比較結(jié)果是否符合預(yù)期。當(dāng)然,根據(jù)使用的平臺(tái)(如Windows、Mac或Linux),在設(shè)置環(huán)境方面可能會(huì)有一些變化。evY28資訊網(wǎng)——每日最新資訊28at.com

典型的語(yǔ)法如下:evY28資訊網(wǎng)——每日最新資訊28at.com

  • 加載網(wǎng)址: driver.get("[網(wǎng)站URL]")
  • 查找元素: driver.findElement(By.id("[元素ID]"))
  • 發(fā)送按鍵: [元素].sendKeys("[要發(fā)送的按鍵]")
  • 執(zhí)行點(diǎn)擊: [元素].click()

在網(wǎng)頁(yè)上的行動(dòng)計(jì)劃大致情景:evY28資訊網(wǎng)——每日最新資訊28at.com

  • 加載網(wǎng)頁(yè)(網(wǎng)站的特定部分)
  • 找到要執(zhí)行操作的元素。有多種方法可以識(shí)別網(wǎng)頁(yè)上的元素。這些元素標(biāo)識(shí)符被稱為“定位器”。在本文中,將研究“XPath”和“id”定位器
  • 執(zhí)行操作。大多數(shù)情況下,這涉及發(fā)送特定的按鍵序列和/或點(diǎn)擊元素
  • 驗(yàn)證狀態(tài)。這就是單元測(cè)試框架(如TestNG、JUnit)的威力所在。確保實(shí)際結(jié)果與預(yù)期結(jié)果相匹配

2 測(cè)試自動(dòng)化項(xiàng)目

自動(dòng)化 formy-project.herokuapp.com/form上的Web表單自動(dòng)化 formy-project.herokuapp.com/form上的Web表單evY28資訊網(wǎng)——每日最新資訊28at.com

通過輸入名字和姓氏并點(diǎn)擊提交按鈕來(lái)自動(dòng)化一個(gè)簡(jiǎn)單的Web表單。evY28資訊網(wǎng)——每日最新資訊28at.com

概述的腳本如下所示:evY28資訊網(wǎng)——每日最新資訊28at.com

  • 輸入用戶名
  • 輸入密碼
  • 點(diǎn)擊“提交”按鈕
  • 通過驗(yàn)證確認(rèn)消息來(lái)驗(yàn)證表單是否成功提交

3 項(xiàng)目設(shè)置

設(shè)置項(xiàng)目和環(huán)境。evY28資訊網(wǎng)——每日最新資訊28at.com

首先,需要下載并安裝IntelliJ IDEA。evY28資訊網(wǎng)——每日最新資訊28at.com

在本地系統(tǒng)上安裝好之后,打開應(yīng)用程序并創(chuàng)建一個(gè)新項(xiàng)目。evY28資訊網(wǎng)——每日最新資訊28at.com

  • 點(diǎn)擊“創(chuàng)建新項(xiàng)目”
  • 在左側(cè)選擇“Maven”并點(diǎn)擊“下一步”

圖片圖片evY28資訊網(wǎng)——每日最新資訊28at.com

在IntelliJ IDEA項(xiàng)目創(chuàng)建過程中選擇“Maven”evY28資訊網(wǎng)——每日最新資訊28at.com

  • 為項(xiàng)目選擇任意名稱(例如“表單自動(dòng)化”),然后點(diǎn)擊“完成”創(chuàng)建該項(xiàng)目

過了一會(huì)兒,應(yīng)該會(huì)有一個(gè)可以使用的模板。您可能會(huì)對(duì)Maven有疑問。evY28資訊網(wǎng)——每日最新資訊28at.com

Maven是一個(gè)構(gòu)建自動(dòng)化工具,主要用于Java項(xiàng)目。使用它來(lái)向項(xiàng)目添加額外的庫(kù)。evY28資訊網(wǎng)——每日最新資訊28at.com

項(xiàng)目結(jié)構(gòu)中pom.xml文件的位置項(xiàng)目結(jié)構(gòu)中pom.xml文件的位置evY28資訊網(wǎng)——每日最新資訊28at.com

在創(chuàng)建項(xiàng)目并打開pom.xml文件后,它的外觀將類似于以下內(nèi)容:evY28資訊網(wǎng)——每日最新資訊28at.com

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xsi:schemaLocatinotallow="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">    4.0.0    org.example    Form Automation    1.0-SNAPSHOT

現(xiàn)在我們使用這個(gè)文件來(lái)添加可以用來(lái)自動(dòng)化應(yīng)用程序的額外庫(kù)。evY28資訊網(wǎng)——每日最新資訊28at.com

以下是應(yīng)該添加到項(xiàng)目中的行(用粗體突出顯示),以便能夠自動(dòng)化Web應(yīng)用程序:evY28資訊網(wǎng)——每日最新資訊28at.com

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xsi:schemaLocatinotallow="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">    4.0.0    org.nomadicdmitry    Form Automation    1.0-SNAPSHOT                    org.seleniumhq.selenium        selenium-server        3.141.59                org.testng        testng        7.1.0        test                org.apache.maven.plugins        maven-surefire-plugin        3.0.0-M4

添加這些行后,幾乎擁有了在項(xiàng)目中使用的所有必要庫(kù)。具體來(lái)說:evY28資訊網(wǎng)——每日最新資訊28at.com

  • Selenium WebDriver:org.seleniumhq.selenium
  • TestNG(單元測(cè)試框架):org.testng
  • Maven SureFire(簡(jiǎn)單的測(cè)試計(jì)劃執(zhí)行):org.apache.maven.plugins

還有一些要注意的事項(xiàng):evY28資訊網(wǎng)——每日最新資訊28at.com

IDEA中下載的庫(kù)的外觀IDEA中下載的庫(kù)的外觀evY28資訊網(wǎng)——每日最新資訊28at.com

  • 在添加這些庫(kù)后,請(qǐng)確保按照右側(cè)的按鈕下載這些庫(kù)(帶有“M”符號(hào)的按鈕)。您應(yīng)該看到它開始下載這些庫(kù)。
  • 請(qǐng)確保檢查這些庫(kù)的最新版本,以避免以后出現(xiàn)任何問題。這是Selenium的Maven存儲(chǔ)庫(kù)鏈接。您可以輕松搜索所需的庫(kù)并將適當(dāng)?shù)陌姹咎砑拥侥捻?xiàng)目中。

已經(jīng)準(zhǔn)備好開始編寫代碼了。不過,先起草一下,然后再繼續(xù)。evY28資訊網(wǎng)——每日最新資訊28at.com

4 起草代碼

通常,大多數(shù)WebDriver教程描述了需要執(zhí)行的命令序列。我們暫時(shí)遵循這個(gè)模式,概述一下在這里為測(cè)試執(zhí)行的操作:evY28資訊網(wǎng)——每日最新資訊28at.com

System.setProperty("webdriver.chrome.driver", "chromedriver");WebDriver driver = new ChromeDriver();driver.get(https://formy-project.herokuapp.com/form);driver.findElement(By.id("first-name")).sendKeys("名字");driver.findElement(By.id("last-name")).sendKeys("姓氏");driver.findElement(By.xpath("http://a[contains(text(),'提交')]")).click();driver.close();

只用七行代碼就能實(shí)現(xiàn)自動(dòng)化填寫網(wǎng)頁(yè)表單的工作解決方案。為了澄清一下,第一行顯示了chromedriver的位置(因?yàn)樵贑hrome上執(zhí)行此腳本),第二行創(chuàng)建了一個(gè)后續(xù)要使用的WebDriver實(shí)例。evY28資訊網(wǎng)——每日最新資訊28at.com

接下來(lái)的幾行很容易分析,因?yàn)橹皇羌虞d頁(yè)面并使用定位器執(zhí)行操作。這段代碼將正常工作并執(zhí)行必要的操作(除了稍后要討論的斷言部分)。evY28資訊網(wǎng)——每日最新資訊28at.com

然而,這段代碼有什么問題呢?問題在于它與在真實(shí)環(huán)境中的實(shí)際使用方式相去甚遠(yuǎn),原因如下:evY28資訊網(wǎng)——每日最新資訊28at.com

  • 如果我們決定在其他地方使用它,它不可重用并帶來(lái)重復(fù)的代碼
  • 如果我們多次調(diào)用這些定位器,更改每行的定位器將很困難,難以維護(hù)
  • 隨著添加更多測(cè)試,它將變得難以閱讀和理解

讓我們回到項(xiàng)目并規(guī)劃項(xiàng)目結(jié)構(gòu)。evY28資訊網(wǎng)——每日最新資訊28at.com

創(chuàng)建項(xiàng)目結(jié)構(gòu)

使用PageObject方法作為設(shè)計(jì)測(cè)試的基礎(chǔ)。在Java類的術(shù)語(yǔ)中,這意味著將為每個(gè)網(wǎng)頁(yè)創(chuàng)建一個(gè)類,并概述定位器和執(zhí)行操作的方法。此外,還將創(chuàng)建一個(gè)“父”類,從中繼承我們的對(duì)象(頁(yè)面)。evY28資訊網(wǎng)——每日最新資訊28at.com

自動(dòng)化測(cè)試的項(xiàng)目結(jié)構(gòu)自動(dòng)化測(cè)試的項(xiàng)目結(jié)構(gòu)evY28資訊網(wǎng)——每日最新資訊28at.com

此外,還需要一個(gè)類,用于將所有類連接起來(lái),并具有存儲(chǔ)配置設(shè)置的變量。evY28資訊網(wǎng)——每日最新資訊28at.com

以下是項(xiàng)目結(jié)構(gòu)示例:evY28資訊網(wǎng)——每日最新資訊28at.com

  • PageObject
  • TestPlan
  • Utils
  • WebForm

繼續(xù)在項(xiàng)目中創(chuàng)建這四個(gè)類。請(qǐng)打開“[項(xiàng)目]/src/test/”,右鍵單擊“test”文件夾。選擇“New -> Java Class”,并相應(yīng)地創(chuàng)建這些類。evY28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-26567-0.html基于IntelliJ IDEA,輕松實(shí)現(xiàn)Selenium自動(dòng)化測(cè)試

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: 15個(gè)必知Pandas代碼片段,助你精通數(shù)據(jù)分析

下一篇: C++編譯優(yōu)化:如何優(yōu)化編譯器的輸出代碼質(zhì)量

標(biāo)簽:
  • 熱門焦點(diǎn)
  • Mate60手機(jī)殼曝光 致敬自己的經(jīng)典設(shè)計(jì)

    8月3日消息,今天下午博主數(shù)碼閑聊站帶來(lái)了華為Mate60的第三方手機(jī)殼圖,可以讓我們?cè)谡鏅C(jī)發(fā)布之前看看這款華為全新旗艦的大致輪廓。從曝光的圖片看,Mate 60背后攝像頭面積依然
  • 對(duì)標(biāo)蘋果的靈動(dòng)島 華為帶來(lái)實(shí)況窗功能

    繼蘋果的靈動(dòng)島之后,華為也在今天正式推出了“實(shí)況窗”功能。據(jù)今天鴻蒙OS 4.0的現(xiàn)場(chǎng)演示顯示,華為的實(shí)況窗可以更高效的展現(xiàn)出實(shí)時(shí)通知,比如鎖屏上就能看到外賣、打車、銀行
  • 摸魚心法第一章——和配置文件說拜拜

    為了能摸魚我們團(tuán)隊(duì)做了容器化,但是帶來(lái)的問題是服務(wù)配置文件很麻煩,然后大家在群里進(jìn)行了“親切友好”的溝通圖片圖片圖片圖片對(duì)比就對(duì)比,簡(jiǎn)單對(duì)比下獨(dú)立配置中心和k8s作為配
  • 一年經(jīng)驗(yàn)在二線城市面試后端的經(jīng)驗(yàn)分享

    忠告這篇文章只適合2年內(nèi)工作經(jīng)驗(yàn)、甚至沒有工作經(jīng)驗(yàn)的朋友閱讀。如果你是2年以上工作經(jīng)驗(yàn),請(qǐng)果斷劃走,對(duì)你沒啥幫助~主人公這篇文章內(nèi)容來(lái)自 「升職加薪」星球星友 的投稿,坐
  • 自動(dòng)化在DevOps中的力量:簡(jiǎn)化軟件開發(fā)和交付

    自動(dòng)化在DevOps中扮演著重要角色,它提升了DevOps的效能。通過自動(dòng)化工具和方法,DevOps團(tuán)隊(duì)可以實(shí)現(xiàn)以下目標(biāo):消除手動(dòng)和重復(fù)性任務(wù)。簡(jiǎn)化流程。在整個(gè)軟件開發(fā)生命周期中實(shí)現(xiàn)更
  • 破圈是B站頭上的緊箍咒

    來(lái)源 | 光子星球撰文 | 吳坤諺編輯 | 吳先之每年的暑期檔都少不了瞄準(zhǔn)追劇女孩們的古偶劇集,2021年有優(yōu)酷的《山河令》,2022年有愛奇藝的《蒼蘭訣》,今年卻輪到小破站抓住了追
  • 年輕人的“職場(chǎng)羞恥感”,無(wú)處不在

    作者:馮曉亭 陶 淘 李 欣 張 琳 馬舒葉來(lái)源:燃次元“人在職場(chǎng),應(yīng)該選擇什么樣的著裝?”近日,在網(wǎng)絡(luò)上,一個(gè)與著裝相關(guān)的帖子引發(fā)關(guān)注,在該帖子里,一位在高級(jí)寫字樓亞洲金
  • 三星Galaxy Z Fold5今日亮相:厚度縮減但仍略顯厚重

    據(jù)官方此前宣布,三星將于7月26日也就是今天在韓國(guó)首爾舉辦Unpacked活動(dòng),屆時(shí)將帶來(lái)帶來(lái)包括Galaxy Buds 3、Galaxy Watch 6、Galaxy Tab S9、Galaxy
  • 3699元!iQOO Neo8 Pro頂配版今日首銷:1TB UFS 4.0同價(jià)位唯一

    5月23日,iQOO推出了全新的iQOO Neo8系列,包含iQOO Neo8和iQOO Neo8 Pro兩個(gè)版本,其中標(biāo)準(zhǔn)版搭載高通驍龍8+,而Pro版更是首發(fā)搭載了聯(lián)發(fā)科天璣9200+旗艦
Top