天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

VS2010 測(cè)試功能之旅:編碼的UI測(cè)試(4)-通過編寫測(cè)試代碼的方式建立UI測(cè)試(下)

  回顧

  最近比較忙,距離上次更新的時(shí)間較久,見諒。

  在本章上部分,介紹了“添加用戶”窗口的測(cè)試代碼編寫。想必大家也看到了,在UIMap.cs文件中實(shí)現(xiàn)自定義編碼是一件很輕松的事情,接下來將介紹下個(gè)部分,查詢用戶窗體的測(cè)試代碼的編寫,以及他們測(cè)試的關(guān)聯(lián)。

  示例程序介紹

  系統(tǒng)主窗口:(下載點(diǎn)我

  該系統(tǒng)擁有兩個(gè)功能,“添加用戶”和“查詢用戶”:

  點(diǎn)擊添加用戶后,進(jìn)入添加用戶子窗體:(“添加用戶”窗口的測(cè)試代碼編寫在上部分已經(jīng)實(shí)現(xiàn)

  如果在之前的主窗口,點(diǎn)擊查詢用戶,則進(jìn)入查詢用戶子窗體:

  注:系統(tǒng)默認(rèn)自帶了5個(gè)用戶TestUser1, TestUser2, TestUser3, TestUser4, TestUser5。

  這個(gè)窗體不會(huì)彈任何提示框,默認(rèn)進(jìn)入窗體時(shí),DataGridView里面沒有加載數(shù)據(jù),現(xiàn)在進(jìn)行一個(gè)說明:

  查詢條件-用戶名:表示是否按用戶名查詢(非模糊查詢),如果不輸入,默認(rèn)為不按其查詢。

  查詢條件-用戶類型:有三個(gè)選項(xiàng)“所有”,“管理員”,“一般用戶”。

  查詢條件-日期:表示是否按日期查詢,如果勾上了日期CheckBox,則旁邊的DateTimePicker會(huì)啟用,然后選擇一個(gè)具體的日期。

  按鈕-查詢:就會(huì)按以上條件查詢。

  按鈕-重置:用戶名清空,用戶類型變成所有,日期取消勾選。

  文本框-用戶備注:當(dāng)查詢出數(shù)據(jù)以后,每選擇DataGridView里面中的一行數(shù)據(jù),用戶備注TextBox會(huì)自動(dòng)加載當(dāng)前行的用戶備注。

  如何設(shè)計(jì)測(cè)試

  現(xiàn)在需要明確的就是,我們既需要檢查“查詢用戶”窗口的基本功能,又需要確定之前在“添加用戶”窗口添加的用戶是否被添加了進(jìn)來,所以這里的檢查尤其重要,根據(jù)剛才的功能描述,現(xiàn)在需要編寫測(cè)試設(shè)計(jì)。(在看下面的設(shè)計(jì)之前大家可以先試著自己設(shè)計(jì)下) 。

  自動(dòng)化測(cè)試,關(guān)鍵不在技術(shù),而是在測(cè)試設(shè)計(jì)上,所以這里需要設(shè)計(jì)得比較全面:

步驟序號(hào)

操作步驟

檢查點(diǎn)

1

在主窗口菜單點(diǎn)擊用戶查詢

檢測(cè)查詢用戶子窗口是否彈出

2

用戶名為空,用戶類型為“所有”,不勾選時(shí)間,點(diǎn)擊查詢,記錄查詢出的用戶行數(shù),程序默認(rèn)選中第一行,這時(shí)我們選中第二行

檢測(cè)“用戶備注”一列的值是否和下方的“用戶備注”文本框的值一致

3

加的用戶,其他條件不變,點(diǎn)擊查詢(例如,在上個(gè)部分的示例中,我們使用的是”TestUser6”)

查詢出用戶名為TestUser6的一條數(shù)據(jù)

4

用戶名為一個(gè)不存在的用戶“testuser100”,其他條件不變,點(diǎn)擊查詢

未查詢出數(shù)據(jù)

5

將用戶名設(shè)置為空,其他條件不變,用戶類型為“管理員”,記錄查詢出的行數(shù)

查詢出所有為“管理員”的用戶(注,為了方便,這里沒有使用從數(shù)據(jù)庫(kù)比對(duì),而只使用查詢條件與查詢出的數(shù)據(jù)比對(duì),實(shí)際項(xiàng)目中可能使用數(shù)據(jù)庫(kù)比對(duì))

6

將用戶類型設(shè)置為“一般用戶”,其他條件不變,記錄查詢出的行數(shù)

查詢出所有為“一般用戶”的用戶

7

使用剛才用戶類型分別為“所有”,“管理員”,“一般用戶”查詢出的數(shù)據(jù)行數(shù),進(jìn)行比對(duì)

一般用戶行數(shù)+管理員用戶行數(shù)=所有用戶行數(shù)

8

用戶名為空,用戶類型為“所有”,勾選時(shí)間,并進(jìn)行選擇“2008-1-11”

查詢出所有添加時(shí)間為“2008-1-11”的用戶

9

將條件設(shè)置為剛才我們?cè)谔砑佑脩舸翱谔砑拥挠脩粜畔ⅲㄊ褂梦覀冊(cè)谏弦粋€(gè)示例中使用的值,如”TestUser6”,”一般用戶”,時(shí)間為添加時(shí)間,時(shí)間這個(gè)需要用到某個(gè)變量來記錄)

查詢出對(duì)應(yīng)的一條數(shù)據(jù)

10

點(diǎn)擊重置按鈕

用戶名為空,用戶類型為“所有”,不勾選時(shí)間

11

點(diǎn)擊退出

退出窗口

  接下來將以上的檢查點(diǎn)轉(zhuǎn)換為代碼。

  對(duì)測(cè)試進(jìn)行編碼

  我們可以接著上次錄制的代碼來編寫,因?yàn)樵?a >上個(gè)部分對(duì)于某些編寫方式(例如先捕獲對(duì)象再編寫和先錄制再轉(zhuǎn)移修改的方式)已經(jīng)描述得很詳細(xì)了,下面默認(rèn)使用這些方式,因此就不一一闡述對(duì)象的捕捉過程了。這里只介紹上個(gè)部分沒有介紹的注意點(diǎn)和和給出主要代碼。

  由于是接著上個(gè)部分的代碼寫,這里需要注釋掉AddUserUIMap.cs中Step7_CloseWindows的兩句代碼,以免他在測(cè)試結(jié)束后將主窗口關(guān)閉掉:

public void Step7_CloseWindows()
{
//操作步驟
bool isClosed;
Mouse.Click(
this.UI添加用戶Window.UI取消Window.UI取消Button, new Point(1, 1));
//和WaitForControlExist相反,這里是最長(zhǎng)等待他3秒關(guān)閉,如果3秒內(nèi)關(guān)閉返回true,否則為false
isClosed= this.UI添加用戶Window.WaitForControlNotExist(3000);
// 這里添上了注釋,以免將主窗口關(guān)閉掉
// Mouse.Click(this.UI系統(tǒng)主窗口Window.UI系統(tǒng)主窗口TitleBar.UICloseButton, new Point(1, 1));
// isClosed &= this.UI系統(tǒng)主窗口Window.WaitForControlNotExist(3000);

//檢查點(diǎn)
Assert.IsTrue(isClosed, "點(diǎn)擊退出,檢測(cè)是否退出添加用戶子窗體和主窗體失敗");
}

NET技術(shù)VS2010 測(cè)試功能之旅:編碼的UI測(cè)試(4)-通過編寫測(cè)試代碼的方式建立UI測(cè)試(下),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 高中生高潮抽搐喷出白浆视频 | 人妖和美女玩 | 亚洲欧美日韩高清中文在线 | 亚洲 综合 欧美在线 热 | 日产日韩亚洲欧美综合搜索 | 亚洲欧美综合乱码精品成人网 | 亚洲精品高清在线 | 国产99网站 | 俄罗斯xxxxxbbbbb | 久久永久免费视频 | 最近免费中文字幕大全免费 | 亚欧洲乱码视频一二三区 | 5g天天影院天天看天天爽 | 顶级欧美不卡一区二区三区 | 在线观看亚洲AV无码每日更新 | 性做久久久久免费观看 | 亚洲国产精品久久无套麻豆 | 无码一区国产欧美在线资源 | 任你懆视频 这里只有精品 人与人特黄一级 | 丰满大屁俄罗斯肥女 | A片毛片免费视频在线看 | 三八成人网 | 5g在视影讯天天5g免费观看 | 亚洲宅男天堂a在线 | 午夜免费无码福利视频麻豆 | 国产区精品综合在线 | 亚洲不卡视频在线观看 | 国内精品视频在线播放一区 | 三级网址在线 | 在线 国产 欧美 专区 | 久久久精品久久久久特色影视 | 久久这里只有精品视频e | 国产精品久久高潮呻吟无码 | 欧美 亚洲 日韩 在线综合 | 国产一区内射最近更新 | 娇小亚裔被两个黑人 | 伊人久久免费 | 久久久久伊人 | 亚洲国产综合人成综合网站00 | 国产片MV在线观看 | 久久久久嫩草影院精品 |