欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Java代碼用例,Java代碼例子

java testng測試用例怎么寫

在eclipse中已經(jīng)創(chuàng)建好的java的項目中,進(jìn)行選中該項目之后,進(jìn)行右鍵的方式彈出進(jìn)行選擇“new”選項。

創(chuàng)新互聯(lián)公司2013年開創(chuàng)至今,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站設(shè)計、成都網(wǎng)站制作網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元紅古做網(wǎng)站,已為上家服務(wù),為紅古各地企業(yè)和個人服務(wù),聯(lián)系電話:18982081108

這樣就會彈出了下一級的菜單中,進(jìn)行選擇一個為other的選項。

然后就進(jìn)入到了new的選項界面中,進(jìn)行再列表中找到為TestNG class選項。

然后就會彈出了一個new testng class的選項,進(jìn)行再package name中進(jìn)行輸入class文件名。

創(chuàng)建完成之后,進(jìn)行打開文件的class的文件,可以看是java代碼中就為一個測試類,一個測試類的模板。

可以通過執(zhí)行testng的測試類,選中整個的項目,進(jìn)行右鍵的方式,彈出了一個下拉中進(jìn)行選擇為“Run As”選中,在次選擇為TestNG Test的選項。

selenium 怎么使用java編寫測試用例

control-1.0.1-dist.zip。 解壓。

2. 用命令行來到解壓的文件夾下: \selenium-remote-control-0.9.2\selenium-server-0.9.2

3. 運行: java -jar selenium-server.jar 啟動selenium server (務(wù)必啟動!!)

4. 在Eclipse創(chuàng)建一個項目,在項目的build path里面加上junit.jar和selenium-java-client-driver.jar(這個在剛解壓的包里面)

5. 先利用firefox selenium IDE來錄制檢測頁面檢測功能用的junit代碼。

6. 在項目里面新建一個class(junit用例):將上面的junit代碼帖于此。

7. 根據(jù)eclipse的錯誤提示來增加相應(yīng)要import的類

8. 在進(jìn)行測試前,最好將對應(yīng)瀏覽器關(guān)閉,否則容易出錯。

9. 然后在Eclipse里運行 “Run As - unit Test”即可看到自動化的范例.

10.運行期間,會彈出ie窗口,自動進(jìn) 行操作測試。檢測完后,若junit顯示為“綠色”則表示成功。

下面粘貼一下那個測試小程序

import com.thoughtworks.selenium.SeleneseTestCase;public class Untitled extends SeleneseTestCase {

public void setUp() throws Exception {

//由于selenium 對*firefox不支持3.6版本的.只能支持3.0版本.所以,最好將selenium IDE錄制的代碼中的firefox改為ie進(jìn)行測試。

//setUp("", "*firefox");

setUp("", "*iexplore");

}

public void testUntitled() throws Exception {

selenium.open("/");

selenium.type("q", "baidu");

selenium.click("btnG");

selenium.waitForPageToLoad("30000");

selenium.click("link= 百度一下,你就知道");

//添加斷言進(jìn)行測試:

// assertTrue(selenium.isTextPresent("OpenQA: Selenium")); //測試出錯,程序退出

assertTrue(selenium.isTextPresent("百度一 下,你就知道")); //測試成功,程序繼續(xù)

}

//用于讓測試的頁面關(guān)閉.若不寫,則頁面不會關(guān)閉

public void tearDown() throws Exception {

selenium.stop();

}

}

(7)

7.1

selenium 常用操作有:open,type,click,select,selectFrame:

1. open("/")打開的是當(dāng)前的網(wǎng)址;selenium.open("/dmmc/"):在當(dāng)前的網(wǎng)址后面追回/dmmc/;

2. type,click,select,selectFrame各方法使用時,對元素的定位都可采用元素ID 或 xpath方式;

3. type,click,select,selectFrame去選擇元素時,可以直接用元素的ID作為標(biāo) 記.

4. 如:selenium.type("loginName", "coship");;采用xpath方式時,則格式如://元素名1[元素屬性名1='元素屬性值1']/元素名2[元素屬性名2='元素 屬 性值2']/....

如:selenium.type("http://input[@name='admin.password']", "coship")7.2

常用命令用法:

1)

type的兩種不同定位方式:

selenium.type("loginName", "coship");

//以下語句的"xpath="可以省略

selenium.type("xpath=//input[@name='admin.password']", "coship");

2)

click的兩種不同定位方式:

selenium.click("imageField"); 即是通過ID定位:input type="submit" value=" " id="imageField"

selenium.click("http://input[@type='submit']"); (通過屬性input-type)

selenium.click("http://input[@value='確定']"); (通過屬性input-value)

selenium.click("http://input[@name='devTypeIds' and @value='000002']") (還可通過屬性@id)

3)

點擊鏈接方式:

對于動態(tài)內(nèi)容的獲取,盡量避 免采用第一種方式(若內(nèi)容變了,則出錯),而采用第二種方式.

實現(xiàn)方式一:

點擊鏈接:a href=..801830456628/a

selenium.click("link=801830456628");

實現(xiàn)方式二:

獲取id=adminList的table中的tbody下的第三行,第二列中的a href元素。

selenium.click("http://table[@id='adminsList']/tbody/tr[3]/td[2]/a");

4)

選 擇下拉框:

實現(xiàn)方式一:

selenium.select("status", "label=啟用");

即 是:select id="status"option value="1"啟用/option/select

實現(xiàn)方式二:

selenium.select("xpath=//SELECT[@id='status']", "index=1");

具體應(yīng)用,請見以下實例。7.3

實例:

用于檢測abmc系統(tǒng)各模塊功能是否正常。

方式:

用selenium IDE錄制abmc系統(tǒng)各模塊功能操作.(前提是:這些操作,這些功能都是正確成功),以后當(dāng)abmc系統(tǒng)升級,更改后,即可運行此腳本,來檢查升級是否 影響系統(tǒng)功能實現(xiàn)。若系統(tǒng)更改有錯,則selenium中運行中某一步驟時,會出錯退出。

如:

系統(tǒng)更改后導(dǎo)致某一頁面打不開,這時 selenium運行到此頁面時,就不能繼續(xù)往下操作,就會出錯而退出。注意:

1.同時,也可在測試代碼中添加一些斷言判斷來判斷成功,失敗。

2.

對于firefox selenium IDE錄制的腳本要進(jìn)行適當(dāng)?shù)男薷?盡量讓selenium用元素ID來定位操作元素,而不通過元素名(元素名易變化)。

3.

若selenium RC檢測代碼出錯,也不一定是系統(tǒng)升級有問題,可能是系統(tǒng)升級后,有些數(shù)據(jù)刪除,修改了,selenium RC在回放操作時,找到原來錄制時對應(yīng)的數(shù)據(jù)而出錯。具體代碼如下:

//對于click,select,selectFrame去選擇元素時,可以直接用元素的ID作為標(biāo)記.// 如:selenium.click("元素ID");public class AbmcSeleniumTest extends SeleneseTestCase {

public void setUp() throws Exception {

setUp("", "*iexplore");

}

public void testUntitled() throws Exception {

selenium.open("/abmc/");

//type的兩種不同定位方式

selenium.type("loginName", "coship");

//以下語句 的"xpath="可以省略

selenium.type("xpath=//input[@name='admin.password']", "coship");

// selenium.click("imageField"); 即是通過ID 定位:input type="submit" value=" " id="imageField"

selenium.click("http://input[@type='submit']");

//等待一個新的頁面加載。 以毫秒為單位,超過后該命令將返回錯誤。

selenium.waitForPageToLoad("30000");

//即選擇frame src="device/index.jsp" id="mainFrame"

selenium.selectFrame("mainFrame");

//對于動態(tài)內(nèi)容的獲取,盡量避免采用第一種方式 (若內(nèi)容變了,則出錯),而采用第二種方式

//點擊鏈接:a href=..801830456628/a

// selenium.click("link=801830456628");

//實現(xiàn)方式二:獲取id=adminList的table中的tbody下的第三行,第二列中的a href元素。

selenium.click("http://table[@id='adminsList']/tbody/tr[3]/td[2]/a");

selenium.waitForPageToLoad("30000");

selenium.click("http://input[@value=' 返回']");

selenium.waitForPageToLoad("30000");

//因為有多個“查看應(yīng)用列表”,若不指定,默認(rèn)獲取第一個

selenium.click("link=查看應(yīng)用列表");

selenium.click("btn_dsure");

// 方式一:

//selenium.click(" //a[@onclick=\"showPage('應(yīng)用列表','deviceAppList.action?device.swType=2device.deviceId=0000257device.deviceName=801830456628device.specName=DevTyp',750,400)\"]");

//方式二:

selenium.click("http://table[@id='adminsList']/tbody/tr[3]/td[5]/span[1]/a");

selenium.click("btn_dsure");

selenium.selectFrame("relative=up");

selenium.selectFrame("leftFrame");

selenium.click("link=應(yīng)用文件管理");

selenium.click("link=應(yīng)用文件信息");

selenium.selectFrame("relative=up");

selenium.selectFrame("mainFrame");

selenium.click("http://a[@onclick=\"showPage('匹配終端類型','appTypeList.action?application.appId=01application.appName=maliao',750,400)\"]");

selenium.click("btn_dsure");

selenium.click("http://table[@id='adminsList']/tbody/tr[7]/td[8]/span[2]/a");

selenium.waitForPageToLoad("30000");

selenium.click("http://input[@name='devTypeIds' and @value='000002']");

selenium.click("http://input[@value='確定']");

selenium.waitForPageToLoad("30000");

selenium.click("http://a[@onclick=\"showPage('匹配終端類型','appTypeList.action?application.appId=01application.appName=maliao',750,400)\"]");

selenium.click("btn_dsure");

selenium.selectFrame("relative=up");

selenium.selectFrame("leftFrame");

selenium.click("link=終端應(yīng)用管理");

selenium.click("link=終端應(yīng)用許可");

selenium.selectFrame("relative=up");

selenium.selectFrame("mainFrame");

// selenium.select("status", "label=啟用"); 即是:select id="status"option value="1"啟 用/option/select

selenium.select("xpath=//SELECT[@id='status']", "index=1");

selenium.click("http://input[@type='image']");

selenium.waitForPageToLoad("30000");

selenium.click("http://input[@type='image']");

selenium.waitForPageToLoad("30000");

selenium.selectFrame("relative=up");

//即 選擇frame src="device/index.jsp" id="mainFrame"

selenium.selectFrame("topFrame");

selenium.click("link=注銷");

//若要測試其 它的網(wǎng)頁,可以繼續(xù)selenium.open(..)

}

}

#web測試技術(shù)

java 怎么寫junit測試用例

java中Junit應(yīng)用介紹:assertexp1;//exp1為boolean類型的值assertexp1:message;//message為如果exp1不是true的時候,要提示的錯誤消息斷言一般作用:代碼運行前寫斷言判斷必須滿足的條件;代碼運行后判斷必須符合的標(biāo)準(zhǔn);確定代碼運行過程中有無改變某些不應(yīng)該變的東西2.junit中的Assert類提供了很多方法,替代斷言,參照api:assertEquals、assertFalse、assertTrue、assertNotNull、assertNull、assertSame、fail3.注解@interface用來定義注解@Retention用來聲明注解的保留策略,有CLASS(注解保存在class文件中)、RUNTIME(運行時可用)和SOURCE(僅在源代碼中)這三種@Target用來聲明注解可以被添加在哪些類型的元素上:注解、類、方法、方法參數(shù)、構(gòu)造、字段、方法中的普通變量定義一個能在方法上使用的注解:@Retention(RetentionPolicy.RUNTIME)@Target({ElementType.METHOD})public@interfaceKennethTest{}寫一個測試類publicclassTest{@KennethTestpublicvoidtest1(){System.out.println("test1");}publicvoidtest2(){System.out.println("test2");}@KennethTestpublicvoidtest3(){System.out.println("test3");}}執(zhí)行一個類中所有標(biāo)記KennethTest的方法publicclassMain{publicstaticvoidmain(String[]args)throwsException{//反射ClassclassObj=Test.class;//獲取Test的類對象Objectobj=classObj.newInstance();//調(diào)用無參數(shù)構(gòu)造,新建一個Test的對象Method[]methods=classObj.getMethods();//獲取Test類中所有public方法for(Methodmethod:methods){if(method.getAnnotation(KennethTest.class)!=null){//看這個方法是否有KennethTest注解method.invoke(obj);//如果這個方法有KennethTest注解,那么這個方法被調(diào)用執(zhí)行}}}}4.junit中的注解@Test@Test(expected=IndexOutOfBoundsException.class)測試方法拋出這個異常就能通過測試@Test(timeout=10)測試方法不能超過10毫秒@Ignore忽略測試@Before每個測試方法之前執(zhí)行@After每個測試方法之后執(zhí)行@BeforeClass在加載類時執(zhí)行@AfterClass在所有測試方法執(zhí)行結(jié)束,如果有after的話,所有after也執(zhí)行結(jié)束后執(zhí)行5.通常寫測試代碼的規(guī)則:1)產(chǎn)品源代碼和測試源代碼要分開,包名類名一致例如org.ken.PersonDao對應(yīng)測試代碼可以為test.org.ken.PersonDaoTest2)一個有功能類要寫至少一個測試類3)一個方法代表一個用例用例之間要保持獨立(最好不要互相調(diào)用)

如何寫測試用例 java

測試用例設(shè)計和執(zhí)行是測試工作的核心,也是工作量最大的任務(wù)之一。

測試用例(Test Case)目前沒有經(jīng)典的定義。比較通常的說法是:指對一項特定的軟件產(chǎn)品進(jìn)行測試任務(wù)的描述,體現(xiàn)測試方案、方法、技術(shù)和策略。內(nèi)容包括測試目標(biāo)、測試環(huán)境、輸入數(shù)據(jù)、測試步驟、預(yù)期結(jié)果、測試腳本等,并形成文檔。

測試用例編寫準(zhǔn)備

1

從配置管理員處申請軟件配置:《需求規(guī)格說明書》和《設(shè)計說明書》;

2

根據(jù)需求規(guī)格說明書和設(shè)計說明書,詳細(xì)理解用戶的真正需求,并且對軟件所實現(xiàn)的功能已經(jīng)準(zhǔn)確理解,然后著手制訂測試用例。

測試用例制定的原則

1測試用例要包括欲測試的功能、應(yīng)輸入的數(shù)據(jù)和預(yù)期的輸出結(jié)果。

2測試數(shù)據(jù)應(yīng)該選用少量、高效的測試數(shù)據(jù)進(jìn)行盡可能完備的測試。

用例覆蓋

1正確性測試:輸入用戶實際數(shù)據(jù)以驗證系統(tǒng)是滿足需求規(guī)格說明書的要求;測試用 例中的測試點應(yīng)首先保證要至少覆蓋需求規(guī)格說明書中的各項功能,并且正常。

2容錯性(健壯性)測試:程序能夠接收正確數(shù)據(jù)輸入并且產(chǎn)生正確(預(yù)期)的輸出, 輸入非法數(shù)據(jù)(非法類型、不符合要求的數(shù)據(jù)、溢出數(shù)據(jù)等),程序應(yīng)能給出提示 并進(jìn)行相應(yīng)處理。把自己想象成一名對產(chǎn)品操作一點也不懂的客戶,在進(jìn)行任意操作。

3完整(安全)性測試:對未經(jīng)授權(quán)的人使用軟件系統(tǒng)或數(shù)據(jù)的企圖,系統(tǒng)能夠控制的程度,程序的數(shù)據(jù)處理能夠保持外部信息(數(shù)據(jù)庫或文件)的完整。

4接口間測試:測試各個模塊相互間的協(xié)調(diào)和通信情況,數(shù)據(jù)輸入輸出的一致性和正確性。

5壓力測試:輸入10條記錄運行各個功能,輸入30條記錄運行,輸入50條記錄進(jìn)行測試。

6性能:完成預(yù)定的功能,系統(tǒng)的運行時間(主要是針對數(shù)據(jù)庫而言)。

7可理解(操作)性:理解和使用該系統(tǒng)的難易程度(界面友好性)。

8可移植性:在不同操作系統(tǒng)及硬件配置情況下的運行性。

測試方法

1邊界值分析法:確定邊界情況(剛好等于、稍小于和稍大于和剛剛大于等價類邊界值),針對我們的系統(tǒng)在測試過程中主要輸入一些合法數(shù)據(jù)/非法數(shù)據(jù),主要在邊界值附近選取。

2等價劃分:將所有可能的輸入數(shù)據(jù)(有效的和無效的)劃分成若干個等價類。

3錯誤推測:主要是根據(jù)測試經(jīng)驗和直覺,參照以往的軟件系統(tǒng)出現(xiàn)錯誤之處。

測試用例的填寫

1一個軟件系統(tǒng)或項目共用一套完整的測試用例,整個系統(tǒng)測試過程測試完畢,將實際測試結(jié)果填寫到測試用例中,操作步驟應(yīng)盡可能的詳細(xì),測試結(jié)論是指最終的測試結(jié)果(結(jié)論為:通過或不通過)。

使用java編寫代碼如下要求

NewPhone類

package?com.baidu.question;

public?class?NewPhone?extends?Phone?{

private?boolean?mute?=?true;

@Override

public?void?call()?{

if(mute){

super.call();

}else{

System.out.println("語音已關(guān)閉");

}

}

//這里是直接設(shè)置

public?void?setMute(boolean?mute){

this.mute=mute;

}

//擔(dān)心你的題目是要求兩種方法,寫的第二種,下面兩個方法負(fù)責(zé)開關(guān)

public?void?openMute(){

this.mute=true;

/*

*?也可以這樣寫

*?setMute(true);

*?下邊的方法一樣

*?*/

}

public?void?closeMute(){

this.mute?=?false;

}

}

Phone類

package?com.baidu.question;

public?class?Phone?{

public?void?call(){

System.out.println("打電話");

}

}

測試類

package?com.baidu.question;

public?class?PhoneTest?{

public?static?void?main(String[]?args)?{

Phone?phone?=?new?Phone();

phone.call();

NewPhone?newPhone?=?new?NewPhone();

newPhone.call();

newPhone.setMute(false);

newPhone.call();

newPhone.openMute();

newPhone.call();

newPhone.closeMute();

newPhone.call();

}

}

測試結(jié)果

打電話

打電話

語音已關(guān)閉

打電話

語音已關(guān)閉

分享題目:Java代碼用例,Java代碼例子
瀏覽路徑:http://chinadenli.net/article34/dsepdse.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)做網(wǎng)站品牌網(wǎng)站建設(shè)企業(yè)建站企業(yè)網(wǎng)站制作Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營