<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    qileilove

    blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

    “/”應(yīng)用程序中的服務(wù)器錯誤和Server Error in '/' Application... 的終極解決方法

    “/”應(yīng)用程序中的服務(wù)器錯誤。 運行時錯誤 說明: 服務(wù)器上出現(xiàn)應(yīng)用程序錯誤。此應(yīng)用程序的當(dāng)前自定義錯誤設(shè)置禁止遠(yuǎn)程查看應(yīng)用程序錯誤的詳細(xì)信息(出于安全原因)。但可以通過在本地服務(wù)器計算機(jī)上運行的瀏覽器查看。

    詳細(xì)信息: 若要使他人能夠在遠(yuǎn)程計算機(jī)上查看此特定錯誤信息的詳細(xì)信息,請在位于當(dāng)前 Web 應(yīng)用程序根目錄下的“web.config”配置文件中創(chuàng)建一個 <customErrors> 標(biāo)記。然后應(yīng)將此 <customErrors> 標(biāo)記的“mode”屬性設(shè)置為“Off”。

    <!-- Web.Config 配置文件 --><configuration>    <system.web>        <customErrors mode="Off"/>    </system.web></configuration>
     
    原因1: 這是由于配置中 Asp.Net 程序 沒有顯示詳細(xì)的錯誤信息.
    解決:  您必須按照要求,修改 web.config 文件 將 <customErrors mode="Off"/> 設(shè)置mode ="Off", 上傳到網(wǎng)站根目錄.然后刷新就可以看到詳細(xì)錯誤.然后根據(jù)錯誤修改程序就可以了.
    原因2: web.config 文件不是放在www根目錄下.而是放在www的子目錄下等.這樣用戶訪問這個目錄時就會出現(xiàn)提示錯誤.
    解決:  將子目錄下的 Asp.net應(yīng)用程序移到 www根目錄下. 這樣就可以看到詳細(xì)錯誤了.您可以根據(jù)錯誤調(diào)整程序.
     
    3. Asp.Net 程序顯示錯誤如下:
    Server Error in '/' Application. Runtime Error Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine.

    Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "Off".
    原因1: web.config 文件不完整.不是合格的asp.net 配置文件.
    解決:  您要檢查web.config 是否合格,有時候是粗心,xml文件不完整.導(dǎo)致的問題
    原因2: asp.net版本問題.asp.net有asp.net 1.1和 asp.net2.0 兩個版本.

     

    posted @ 2011-10-26 14:00 順其自然EVO| 編輯 收藏

    總結(jié)測試用例的設(shè)計

      作為一位功能測試人員,其主要的職能就是進(jìn)行測試用例的設(shè)計,并根據(jù)測試用例執(zhí)行測試,通過全面的測試來驗證產(chǎn)品的質(zhì)量。因此測試用例也從側(cè)面反映了一個測試人員的測試思路的嚴(yán)密和發(fā)散性,要做好功能測試,測試用例的重要性無法忽視。現(xiàn)將本人設(shè)計測試用例的流程和思路進(jìn)行總結(jié),也方便進(jìn)行交流和探討:

      1) 首先要對測試用例的組織結(jié)構(gòu)進(jìn)行劃分

      如果公司的測試流程還算規(guī)范完整的話,在進(jìn)行需求評審的時候,測試人員就應(yīng)該根據(jù)需求對測試用例的結(jié)構(gòu)進(jìn)行分類,如果是一個比較大型的管理系統(tǒng),那么測試用例就可以根據(jù)功能模塊來進(jìn)行分類,比如:

      如果是游戲,就可以根據(jù)場景來進(jìn)行劃分,比如:

      對測試用例的組織結(jié)構(gòu)進(jìn)行劃分的思路,主要根據(jù)需求文檔的測試切入點來進(jìn)行參考。

      2) 根據(jù)功能點細(xì)致地設(shè)計測試用例

      進(jìn)行完需求評審后,開發(fā)人員會根據(jù)需求文檔及自己所負(fù)責(zé)的工作提 交自己的設(shè)計文檔來進(jìn)行評審,測試人員可以參考設(shè)計文檔中的內(nèi)容提取出各個功能模塊中的功能點來設(shè)計測試用例,如果是管理模塊,首先可以將增刪查改功能作 為第一層功能點,然后再根據(jù)必填項非空判斷、輸入格式驗證來作為第二層功能點;如果是報表模塊,就可以根據(jù)各種查詢條件來提取功能點。

      劃分好功能點后,就可以利用等價類劃分、邊界值分析等一些測試方法來編寫測試用例,并且可以進(jìn)行標(biāo)注,這樣對于后期的測試用例整理相當(dāng)有幫助。

      3) 執(zhí)行完一輪測試之后,都要對測試用例進(jìn)行補充和整理

       執(zhí)行完一輪測試之后,都會對所測試的內(nèi)容有進(jìn)一步的了解,并且開發(fā)人員在實際開發(fā)過程中,會對某些功能的細(xì)節(jié)部分做出一些修改,測試人員應(yīng)該根據(jù)變更和 熟悉程度對之前編寫的測試用例進(jìn)行完善,主要是對測試步驟的修改和異常情況的補充,提高測試用例對需求的覆蓋率,以便能發(fā)現(xiàn)更多的BUG。

      4) 測試結(jié)束之后,根據(jù)測試用例整理出測試思路進(jìn)行總結(jié)

      測試結(jié)束之后,測試人員在提交測試報告之后一般基本就會有一段短暫的休閑期,在此期間,再看看被自己不斷完善的測試用例,根據(jù)用例中的標(biāo)注,可以將之前的測試思路很條理地整理出來,反思有哪些地方考慮不足,這就是經(jīng)驗積累。

       做好這些工作之后,在面對領(lǐng)導(dǎo)問你功能測試會測試到哪些功能,會測試哪些情況,執(zhí)行一輪測試所需的大概時間問題時,測試人員就可以根據(jù)自己編寫的測試用 例進(jìn)行流利回答。套用郭德剛的一句詞:做科學(xué)的人都是很嚴(yán)謹(jǐn)?shù)摹4蠹易鳛槎际怯猩矸葑C的測試人員,只有工作做得細(xì)致嚴(yán)謹(jǐn),自身的水平才能得到提高。(以上 言論僅代表作者的個人觀點,不代表51Testing觀點)

    posted @ 2011-10-26 13:33 順其自然EVO| 編輯 收藏

    一個列表頁面的測試用例的組織

    列表頁面顯示:

      1.   確認(rèn)頁面的默認(rèn)排序方式,字段+升降續(xù);

      2.   含link的列,驗證其有效性,即,點擊后的跳轉(zhuǎn)是否正確;

      3.   第一列的選擇框,“全選”和“部分 選擇”需有效;部分選中時,全選按鈕應(yīng)自動取消。

      頂部搜索功能:

      4.   逐個測試每個搜索條件的有效性;

      5.   做2-3個組合條件的查詢,驗證結(jié)果;合計共有N+3個搜索條件的測試。

      6.   有時間區(qū)間的,驗證列表項的開始到結(jié)束時間 和 選擇區(qū)間有交叉,則為有效,且包含所選日期的記錄;

      7.   條件中,開始時間不能大于結(jié)束時間;

      8.   搜索條件,在分頁顯示時,需始終保持有效;

      9.   點擊名為“顯示全部”的按鈕,需清除所有條件,并顯示所有記錄。

      10.   每一次新的搜索執(zhí)行,都應(yīng)該去除分頁,顯示第一頁、并回到進(jìn)入頁面時的默認(rèn)排序方式。

      右側(cè)或底部的按鈕(按功能分成多個用例):

      11.   單選,多選、全選的情況下,點擊按鈕執(zhí)行某個功能,如暫停服務(wù)、恢復(fù)服務(wù)的按鈕;

      12.   跨頁選擇,在一些 選擇成員的列表中是應(yīng)有效的,需進(jìn)行確認(rèn)。

      列表數(shù)據(jù)的驗證:

      13.   驗證從數(shù)據(jù)庫中得到的列表項中每列數(shù)據(jù)的正確性,要求覆蓋不同情況下的值,比如“開通”、“暫停”的服務(wù)狀態(tài);已使用空間大小和總空間大小等數(shù)字的正確性。可考慮結(jié)合其他用例來描述,但必須覆蓋到。

      列表按標(biāo)題的排序:

      14.   檢查每個列標(biāo)題,要求點擊后能按其進(jìn)行排序:第一次點擊為正序,以后每次點擊為升、降續(xù)的切換。

      15.   進(jìn)入下一頁、上一頁,以及任意分頁顯示時,條件需始終保持有效。

      分頁:

      16.   第2頁/共8頁  每頁 10條/共 79條中的 分頁數(shù)據(jù)必須正確;

      17.   第一頁、 上一頁、下一頁、最后一頁的link在當(dāng)前上下文有意義時顯示,否則隱藏或顯示為文本標(biāo)簽;

      18.   填入某個數(shù)字,點擊“跳轉(zhuǎn)到”按鈕,到正確的頁數(shù);

      另外請考慮每個文本框輸入的有效性,比如日期、域名、跳轉(zhuǎn)到某頁的文本框的能接受的值,具體可參考需求文檔。以上為工作中的手記,供新手參考。(以上言論僅代表作者的個人觀點,不代表51Testing觀點)

    posted @ 2011-10-26 13:15 順其自然EVO| 編輯 收藏

    一道測試面試題及解題思路

    最近,因公司測試人員需要,面試了一批人,我出了一道很簡單的題目,但是沒想到大多數(shù)測試面試人員都答不出來或者答不完全,現(xiàn)把題目和答案公布如下,各位網(wǎng)友如果有何高見,請和我聯(lián)系,一起探討。

      題目:

      環(huán)境:B/S結(jié)構(gòu)

      內(nèi)容:后臺,一個文本框,要求輸入5-100個長度的任意格式的字符串;要求輸入的字符可以在前臺正確的顯示。請根據(jù)需求設(shè)計一組測試數(shù)據(jù),根據(jù)這組測試數(shù)據(jù)的測試,可以完整把握功能的正常使用。

      答案:(這答案都有問題 我實在不知到 出這題的人 到底想考驗什么 浪費資源成本太多  測試首先先確保基本的功能實現(xiàn) 細(xì)節(jié)則要在一次次的測試中慢慢優(yōu)化)

      長度分別為4,5,6的中文字符串——長度為4不通過,其他通過

      長度分別為50的中文字符串——通過

      長度分別為99,100,101的中文字符串——長度為101不通過,其他通過

      長度分別為4,5,6的英文字符串——長度為4不通過,其他通過

      長度分別為50的英文字符串——通過

      長度分別為99,100,101的英文字符串——長度為101不通過,其他通過

      字符串:<’”&          &”’> ——顯示和編輯的時候正常顯示

      字符串: 99個空格+“中中中中中中”——通過

      字符串:“中中中中中中”+ 99個空格——通過

      另外,我覺得作為軟件測試人員,應(yīng)該打開思路,逆向思維,這樣才可以發(fā)現(xiàn)更多缺陷。

    1,個人覺得不了解這個文本框在整個程序中所處的地位,或不了解從其驅(qū)動后產(chǎn)生的影響,僅僅驗證這個框,沒啥有意思的
    2,長度驗證,我們只需要驗證textbox的maxlength屬性就行了,所以這里只需要2個,<4or>100 這個A級夠了
    3,由于是b/s環(huán)境,開發(fā)過程中常常用可能在某個表格處理時忘記設(shè)置換行,所以我們得測試最長字串時的顯示,一般說來全部為某制表符或者全角字符或英文字符就出來,這里抽取一條用例,全為英文全角應(yīng)該就可以了 這個得C級,對其它頁面有影響
    4,空格的過濾,一般說來,編碼中都會有這個函數(shù)的調(diào)用,關(guān)鍵是看函數(shù)是否正確,最快的方式是空+A+空,空+A空+空,就可以判斷是否有此函數(shù),這里需要注意的是全角空格和半角空格的編碼是不一樣的,這點往往有人漏掉 B級就行了
    5,重點應(yīng)該放在各種轉(zhuǎn)義字符和各種HTML編碼上
      這里仍然分兩種情況,如果不允許保存轉(zhuǎn)義字符和Html編碼,那么我們只需要拿出那幾個特殊字符分別保存就行了.但,如果允許保存轉(zhuǎn)義字符和Html 編碼,那么我們就不能僅僅測試這幾個特殊字符,我們還應(yīng)該嘗試輸入各種編碼字符,這個比較多,一般說來公司都應(yīng)該準(zhǔn)備一個檢查表的 這個C級吧
    6,鍵盤在輸入框中的操作 這個略了 這個B級 詳細(xì)的測試方法,可以看檢查表
    7,這個文本框還得分是單行還是多行的,多行的還得添加幾個.不詳談
    8,當(dāng)然還得看這個輸入框是否還有其它約束條件,比如不能為空啊什么的.這個得看實際系統(tǒng)
    9,這個框惟一不?又是兩種條件,略
    10,提交這個框后對列表的影響(如果有列表的話)
    其實還有一些,但是由于不了解其環(huán)境,擴(kuò)展其來沒啥意思了,像這種文本框的應(yīng)該用檢查表或啥的統(tǒng)計起來,每次都去弄,成本太高了,另外樓主給的答案,個人覺得有些實在沒啥必要存在,而相反答案中應(yīng)該著重考慮其所處的環(huán)境這點.

    posted @ 2011-10-26 11:44 順其自然EVO| 編輯 收藏

    22個實用的HTML5 CSS3表單開發(fā)教程

    http://www.iteye.com/news/23149

    posted @ 2011-10-25 20:48 順其自然EVO 閱讀(175) | 評論 (0)編輯 收藏

    如何精通性能測試?

     性能測試知識的持續(xù)學(xué)習(xí)

      大多數(shù)你可以靈活支配的全部是你自己的知識。我已經(jīng)在性能測試領(lǐng)域?qū)W習(xí)和工作8年了,但我?guī)缀趺恐苓€一如既往的學(xué)習(xí)新的性能測試知識,以軟件測試為專項去加深和豐富它。有很多性能測試方面的東西需要寫成文字形式去記錄下來,這也是一個知識積累的主要部分。

      如果你夢想成為性能測試人員,那么你需要不斷的學(xué)習(xí)。閱讀文章、 博客、書籍和工具文檔都是一個好的學(xué)習(xí)開始。參加會議、培訓(xùn)、專題討論會和類似的小組會等都是一個可以認(rèn)識一些有相似愛好者的好方式。如果你沒有類似的機(jī) 會,那么可以加入一些在線的性能測試論壇,以你自己的學(xué)習(xí)方式,去參與一些發(fā)言或討論,這也是一種和讀書類似的很棒的受教方式。

      沒有任 何學(xué)習(xí)最終能脫離實踐。在此我強烈推薦我寫的一篇完整的關(guān)于實踐的文章(在我的博客中可以找到)。很多你閱讀的資料中都包含練習(xí),你可以操作一遍。很多你 參與的會議、培訓(xùn)、專題討論會,都會有例子,你可以重復(fù)一遍。即使你已經(jīng)知道結(jié)果了,也要自己去動手操作,這是一種不同類型的學(xué)習(xí)。當(dāng)上手實踐過后,才能 成為最好的學(xué)習(xí)者。

      對于性能測試,我認(rèn)為開源社區(qū)是一個很好的實踐學(xué)習(xí)的地方。考慮到性能測試的性質(zhì),大部分測試工具都是互通的,學(xué)習(xí) 多種開源工具將會給你不同的解決性能問題的思路。很多時候,現(xiàn)有可用的工具會束縛我們著手解決問題的想法,但如果你實踐用過多種工具,則你會有多種不同的 途徑和解決方案。

      一旦你知道如何使用多種性能測試工具,如果你不愿意或因為一些機(jī)會不得不離開現(xiàn)在的工作崗位而沒有測試項目,那么我建議你自己合理安排你的時間。有很多非盈利性質(zhì)的在線社區(qū)或論壇機(jī)構(gòu)可以幫助技術(shù)人才提高其自身的能力。所以對于自身的學(xué)習(xí),在非測試工作領(lǐng)域和有正式的測試工作一樣很有價值。

      開始推銷你的技能和能力

       如果你真希望以性能測試為職業(yè),我建議你開始準(zhǔn)備一下齊全的推銷資料。一份簡歷就是絕大部分人聚集他們推銷自己技能的場所,也是你推銷行動開始的地方。 簡歷中應(yīng)該講述給你潛在雇主什么內(nèi)容呢?你不是一位性能測試人員嗎?你的每一段過去的經(jīng)歷怎樣幫助你明確性能測試的發(fā)展方向呢?請記住,對于性能測試從業(yè) 者來說,一個顯著的挑戰(zhàn)就是它的多樣化,這也一定很容易和一個性能測試者的經(jīng)驗技能聯(lián)系起來。

      別忘記在你的簡歷中包含對培訓(xùn)的描述。我 不得不想起有些人有過像參加專題討論會、在一些在線社區(qū)活躍了幾年這樣的經(jīng)歷,但未將這些經(jīng)歷寫入簡歷,不管這些是否能幫助你展現(xiàn)你的技能,都要寫進(jìn)簡 歷,而且還應(yīng)包含一些能夠展示給別人關(guān)于你對于性能測試的渴望和你在不斷的學(xué)習(xí)等相關(guān)的內(nèi)容。

      依據(jù)你向往的公司類型或你想從事的項目類型,都要有恰當(dāng)?shù)淖C明文件。證明是關(guān)于性能測試的而不僅僅證明你會使用測試工具。恰當(dāng)?shù)淖C明也許來自程序語言的結(jié)構(gòu)(如Java),網(wǎng)絡(luò)(如CCNA),應(yīng)用服務(wù)器(如WebSphere),數(shù)據(jù)庫(如Oracle),或者甚至是你想從事的工作內(nèi)容(如 CPCU,如果你想從事保險行業(yè))。通常我不是一個喜歡關(guān)注證明資料的人,但他們可以幫助你暢通無阻的推銷自己。

       最終我認(rèn)為寫作才是推銷你自己的最好方式。開始在一些在線社區(qū)活躍起來吧,回答一些專題討論的問題或用郵件方式研討一下你的思路等等。就像你聽說過的, 在你的博客中列出你學(xué)習(xí)的目錄,這樣別人也會對你的努力有所了解。當(dāng)你確實開始了解了一個性能測試的明確方向,那么去嘗試寫些文章或關(guān)于它的文件吧。在一 些討論會或?qū)n}社區(qū)介紹給大家你的思想,你會通過這種寫的方式變得更公眾化,你也會學(xué)到更多。我的體會就是,對于你寫的文章,別人提出很多反饋信息時,你 會學(xué)到更多。即使你不成為下一個性能方面的資深人士,當(dāng)你的潛在老板搜索到你的名字,他們會很快因看到你擁有性能測試的廣泛知識而喜歡你的。

      融匯你熟悉的項目到性能測試中

      即使你在當(dāng)前的工作中沒有性能測試項目,你仍然可以把你的項目聯(lián)系起來。你的團(tuán)隊在做Web Services的測試嗎?那么你可以有XML的經(jīng)驗,不同協(xié)議和常用專業(yè)工具的經(jīng)驗。你的團(tuán)隊在做數(shù)據(jù)庫的測試嗎?那么你可以有SQL和管理大型數(shù)據(jù)庫的經(jīng)驗。你的團(tuán)隊在進(jìn)行自動化測試嗎?那么你可以得到設(shè)計和處理分布式測試問題的經(jīng)驗。你的團(tuán)隊在做基于風(fēng)險的測試嗎?那么你將會了解一個應(yīng)用的風(fēng)險建模或特征,并且讓你懂得進(jìn)行不同的測試會如何做出不同的選擇。我還能繼續(xù)說出更多類似的例子,所以把握住你當(dāng)前的機(jī)會,將他們聯(lián)系到不同的性能測試知識中。

      如果你沒有自己的性能測試項目,那么試問一下你能和其他人 一起工作嗎。你自己的合理時間是什么?如果你在別人的短暫監(jiān)管下工作是怎么樣的?在與當(dāng)前的經(jīng)理共事的過程中去了解是什么要素阻止了給你更好的機(jī)會,也許 沒有給你機(jī)會的原因在他們直接管理的范圍之外有好幾個,也許他們可以給你機(jī)會,但他們沒有對你有足夠的重視。你想試圖和他們明晰這些,在和他們談話之后, 你應(yīng)該了解在公司中什么樣的機(jī)會是有價值的。了解到這點,有時你不得不放棄個別的機(jī)會,如果這樣做了,確信你就清楚了在以后新的工作中你的期望是什么。

     How to specialize in Performance Testing?

      Continuing to learning about performance testing

      The activity that you have the most control over is your own learning. I’ve been studying and doing performance testing for eight years, and I honestly still learn something new about performance testing almost every week. It’s a deep and rich specialization in software testing. There’s a lot to performance testing that still needs to be formalized and written down. It’s still a growing body of knowledge.

      If your dream is performance testing, then you need to continue to learn. Reading articles, blogs, books and tool documentation is a good place to start. Attending conferences, training, workshops and local groups is a great place to meet others who have similar passions. If you don’t have opportunities like those, then join one of the many online communities where performance testers have a presence. Depending on your learning style, dialog and debate can be as great a teacher as reading, if not greater.

      Finally, no learning is complete without practice. I’m so passionate about the topic of practice that I wrote an entire article on it (you can find it here). Many of the materials you read will include exercises. Work through them. Many of the conferences, training, and workshops you attend will show examples. Repeat them. Going through the work on your own, even if you already know the outcome, provides a different kind of learning. Some people learn best when the experience is hands-on.

      For performance testing, I think a great place to start practicing is in the open source community. Given the nature of performance testing, most tool knowledge is transferable to other performance testing tools. Learning multiple open source tools will also give you different ideas for how you can solve a performance testing problem. Many times, our available tools anchor our thinking about how to approach the problem. If you’ve practiced with multiple tools, you’re more likely to have variety in your test approaches and solutions.

      Once you know how to use a couple of performance testing tools, if you can’t seem to get the project work you need at your current employer, and you’re unwilling or unable to leave for another opportunity, then I recommend volunteering your time. There are a lot of online communities that help connect people who want to volunteer their technical talents to nonprofits or other community-minded organizations. Finding project work outside of your day job can be just as valuable as formal project work.

      Start marketing your skills and abilities

      If you’re serious about performance testing as a career, I recommend you start pulling together some marketing material. A resume is the place most people focus their limited marketing skills. That could be a good place for you to start as well. What story does your resume tell a potential employer? Is it that you’re a performance tester? How has each of your past experiences helped you develop a specific aspect of performance testing? Remember, one of the great challenges performance testing presents to practitioners is its variety. That makes it easy to relate a variety of experiences to the skills a performance tester needs.

      Don’t forget to include your training on your resume. I’ve had to remind several people of classes they’ve attended, workshops they participated in, or people who have been an active member of an online community for years and have not included that on their resume. If it helps you tell the story of your expertise, get it on there. Include anything that shows an employer that you’re passionate about performance testing and you’re continuously learning more about it.

      Depending on the types of companies you want to work for, or the types of projects you might want, a certification might be appropriate. Certifications relevant to performance testing aren’t just performance testing tool certifications. Appropriate certifications may also come in the form of programming languages (e.g., Java certification), networking (e.g., CCNA), application servers (e.g., WebSphere administrator certification), databases (e.g., Oracle certification), or even a certification in the context you want to work in (e.g., CPCU certification if you want to work in the Insurance industry). I’m not normally a big fan of certifications, but they are clear marketing products.

      Finally, I think the best way to market yourself is to write. Start by being active in an online community. Answer questions on forums or debate ideas on mailing lists. As you learn, catalog your learning in a blog so others can benefit from your hard work. If you feel you’re really starting to understand a specific aspect of performance testing, try writing an article or paper on it (for example, email your idea to an editor at SearchSoftwareQuality.com — they’ll point you in the right direction for help if you need it). Present your idea at a conference or workshop. The more of a public face you develop by writing, the more you learn. My experience has been that people are very vocal in their feedback on what you write. You should get to learn a lot. Even if you don’t become the next Scott Barber, when a potential employer Googles your name, they’ll quickly see that you know something about performance testing and have a passion for it.

      Align your project work with performance testing activities

      Even if you can’t get performance testing projects at your current employer, you can still get project work that relates to performance testing. Does your team test Web services? See if you can get involved; it will get you experience with XML, various protocols and, often, specialized tools. Does your team test databases? See if you can get involved; it will get you experience with SQL and managing large datasets. Does your team write automated tests? See if you can get involved; it will get you experience programming and dealing with the problems of scheduled and distributed tests. Does your team do risk-based testing? See if you can get involved; it will get you experience modeling the risk of an application or feature and teach you how to make difficult choices about which tests to run. I could go on with more examples. Take your current opportunities and make them relevant for learning more about performance testing.

      If you can’t get your own performance testing project, ask if you can work with someone else. What if you volunteer some of your time? What if you work under someone else’s supervision for a while? Work with your current manager to understand what factors are preventing them from giving you the opportunity. Perhaps they can’t give you the opportunity for a number of reasons out of their direct control. Perhaps they can, they just haven’t given it enough attention. After a conversation where you try to figure it out with them, you should have an idea of what opportunities are available at that company. Just recognize that sometimes you have to leave for different opportunities. If you do that, make sure you’re clear with your new employer as to what your expectations are

    posted @ 2011-10-25 14:51 順其自然EVO| 編輯 收藏

    巧測字段最大長度

    相信在測試過程中,大家都會碰到一個費時又枯燥的工作,即“測試輸入項可接受的最大長度是否符合需求。”尤 其是當(dāng)一個新系統(tǒng)剛開發(fā)的時候,有大量的字段需要測試。而當(dāng)眾多的新功能需要測試的時候,這個測試點常常優(yōu)先級不高,測試人員往往只是挑了其中一些重要的 或者偶然碰到的字段進(jìn)行了測試,有時甚至忘記這檔子事了。不幸的是,根據(jù)來自生產(chǎn)環(huán)境的缺陷報告,我們幾乎每個項目都碰到過由于用戶輸入了超長的字段而產(chǎn) 生的產(chǎn)品缺陷,有的甚至嚴(yán)重妨礙了用戶操作。這個差異告訴我們“應(yīng)該要測試字段的最大長度,而且要用一種更簡單易行的辦法使得做這個工作的代價較低。”

     

    James Bach在他的網(wǎng)站(http://www.satisfice.com/tools.shtml)上發(fā)布了他寫的一個小程序Perlclip,可以用來生成一定規(guī)律的指定長度的字串,放在windows的剪貼板中,然后你可以粘貼到任何你想要輸入的字段中。這是一個適用范圍比較廣的小工具,如果你還在自己手工輸入長串?dāng)?shù)據(jù),并且用word去計算這個字串的長度。那么建議你至少可以向前走一步,試試James的工具。

    有時,我們還需要貪心一點。想想,James工具只能一個一個地準(zhǔn)備數(shù)據(jù),而把這些數(shù)據(jù)粘貼到對應(yīng)的輸入框里還是需要手工來做。看數(shù)據(jù)字典、生成字串、粘貼、提交、驗證;看數(shù)據(jù)字典、生成字串、粘貼、提交、驗證。。。如此五步需要大量重復(fù),是否也可以自動化呢?讓我們以一個基于ExtJS的web應(yīng)用為例,借助Sahi這個開源的輕量級web自動化工具,來嘗試測試字段最大長度的更省力的辦法。

    思路1: 從頁面元素得到它的長度限制,然后生成一個最大長度的字串和一個最大長度加1(此處用邊界值法簡化)的字串,進(jìn)行測試。但困難在于頁面元素的長度限制在UI層得不到,只好放棄。

    思路2:在整個頁面的字段中找到那個允許長度最長的字段,然后以這個最長的長度加1的隨機(jī)串去填充各個某種特定輸入類型(如textbox或者textarea)的所有字段,保存,看是否每個字段都報錯。報錯時頁面應(yīng)該提示數(shù)據(jù)非法(所有有長度校驗的字段都失敗),且此時失敗的字段個數(shù)及相應(yīng)的提示(最大長度是多少)應(yīng)與數(shù)據(jù)字典一致。(需要人工檢查)如果DB出了異常,我們應(yīng)該可以從服務(wù)器返回的信息或者異常的日志中知道哪個字段出錯。

     

    這個思路沒有大的問題,但是在我們具體的程序?qū)崿F(xiàn)技術(shù)下碰到了兩個問題。一、我們程序的頁面上有些list因為也是textbox類型,所以被賦了值非法的長值。這并不是我們想要的,因為它把非法值的校驗的和長度的校驗揉雜在一起了。所以,我通過數(shù)據(jù)字典那邊只抽出需要校驗自由輸入的長度的字段來屏蔽這個問題。二、我發(fā)現(xiàn)一些系統(tǒng)生成的只讀的textbox字段,如某對象的ID,不應(yīng)該通過我們的Sahi程序?qū)⑺闹敌薷牡簟_€有一些UI不可見的元素,如開發(fā)人員設(shè)計中特意用到的一些oid,因為也是textbox類型,如果用我們的長字串代替了就會出錯。所以我僅僅對UI可見的且非只讀的textbox來做。經(jīng)過上述修正,最后我的方法如下:

     

    準(zhǔn)備工作:

    1. 準(zhǔn)備一個包含兩列的excel,第一列是需要驗證字段長度的字段名,第二列是該字段允許的最大長度。當(dāng)然,你也可以準(zhǔn)備一個三列的excel,其中多一列字段的類型,以便你既可以生成字串又可以生成數(shù)字。

     

    步驟:

     

    1.   打開一個待測試的頁面

    2.   跑驗證字段長度的腳本

    a.   excel中每個頁面label對應(yīng)的textbox都填上excel中指定長度的字符串,然后一起保存。預(yù)期結(jié)果應(yīng)該是保存成功(不因為字段長度的校驗而失敗)。以此方法還可以順便就把label拼寫錯誤(UI label與數(shù)據(jù)字典label匹配不上)的情況輕松地暴露出來。

    b.   excel中每個頁面label對應(yīng)的textbox都填上excel中指定長度再加1的字符串,觀察系統(tǒng)行為。如果在前臺已經(jīng)做了校驗,則觀察前臺的提示。如果前臺不會禁止掉用戶的超長輸入,則通過保存來提交后臺,預(yù)期結(jié)果應(yīng)該是保存失敗。

     

     

    posted @ 2011-10-25 14:46 順其自然EVO| 編輯 收藏

    參加Design review,測試人員最應(yīng)該關(guān)注的幾個要點

    1. 需求之內(nèi),關(guān)注

    (1)  需求本身是否正確、完整、無二義性(雖然這一步主要在需求學(xué)習(xí)階段進(jìn)行,但design review發(fā)現(xiàn)需求本身問題仍然不算太晚。而且一般此階段暴露的需求問題也比需求學(xué)習(xí)時更深入和細(xì)致。)(如果是CR,需要從代碼角度再次確認(rèn)是否所有的影響都被分析到了。)

     

    (2)  已經(jīng)明確的需求是否被正確理解、完整覆蓋

     

    (3)  需求上的等價類是否由于設(shè)計而不等價了

     

    1. 需求之外,關(guān)注

    (4)設(shè)計時添加的控制字段、mock出來的對象等的具體含義和用法

     

    (5)  是否考慮了非功能性需求,如性能、可用性、兼容性、可擴(kuò)展性等

     

    (6)  是否考慮了特定技術(shù)下的異常情況的處理,如多線程的調(diào)度先后順序、cache的同步等

     

    (7)  設(shè)計是否具有良好的可測試

     

    (8)  設(shè)計是否符合通用的設(shè)計原則和應(yīng)用了正確的設(shè)計模式

    posted @ 2011-10-25 14:44 順其自然EVO| 編輯 收藏

    軟件測試的技術(shù)含量

    天參加一個活動,和同行們討論“軟件測試的技術(shù)含量”,大家腦力激蕩,頗有收獲。

    在去之前,我的想法是:

    通常來說,有技術(shù)含量體現(xiàn)在:1需要有人需要此技術(shù),即此工作有價值;2掌握此技術(shù)需要長時間的積累,但單純長時間也難以掌握此技術(shù);3不是有很多人能做好這個工作  

    測試技術(shù)含量體現(xiàn)在:

    測試策略方法需要根據(jù)實際情況靈活運用 

    2測試工具需要一定專業(yè)技能才能掌握,并發(fā)揮最大功效

    3測試內(nèi)容包括功能測試性能測試、安全性測試、兼容性測試、可靠性測試等等,不同的測試要求不同的專業(yè)技能和工具 

    4對測試軟件相關(guān)的領(lǐng)域知識的掌握 

    5測試對于開發(fā)和需求分析的促進(jìn)和推動

     

    在活動中,主持人對于“知識、技能、技術(shù)”的解析讓人印象深刻,幫助我更好地理解了技能的內(nèi)涵。辯論中,認(rèn)為測試沒有多少技術(shù)含量的一方雖然看似處在弱勢,但實際正方要舉例說明有技術(shù)含量也頗費腦力。不管大家觀點如何,積極探尋測試的價值、方法、技能成為共同的心聲。

     

    活動后,大家總結(jié)了一下與其他角色對比而言,測試的核心競爭力體現(xiàn)在哪三個方面:

     

    1. 相比其他角色,測試人員需要具備更廣的視角,更了解被測系統(tǒng)

     

    2. 作為測試人員的本職工作和核心競爭力,我們需要在測試方面成為專家。比如,在基于風(fēng)險的測試(以盡可能低的成本在盡可能短的時間內(nèi)挖掘盡可能多的有價值的缺陷 )方面擁有自主權(quán)和高置信度

     

    3. 作為個人,測試人員特別需要的軟技能體現(xiàn)在:良好的溝通能力,懷疑精神,強烈的好奇心。。。


    posted @ 2011-10-25 14:43 順其自然EVO| 編輯 收藏

    自動化測試的數(shù)據(jù)依賴和獨立

    自動化測試剛 開始的時候,基于錄制回放,輸入的都是頁面上你實際輸入的數(shù)據(jù)。如果我希望測試一個合法的登錄和一個非法的登錄,同樣的腳本不一樣的數(shù)據(jù)而已,我不想有兩 個腳本,那么就需要對數(shù)據(jù)進(jìn)行參數(shù)化。最好,數(shù)據(jù)與腳本分離,以便更加清晰和容易維護(hù)。因此,自動化測試中引入了“數(shù)據(jù)驅(qū)動”的概念,即用獨立于腳本的測 試數(shù)據(jù)來驅(qū)動腳本的運行。

    單個腳本的數(shù)據(jù)問題可以這樣處理,那么多個腳本之間的數(shù)據(jù)共享和傳遞呢?比如,一個系統(tǒng)有兩個模塊:上游模塊A,下游模塊BB的輸入是A的輸出。這里有一個問題:B的數(shù)據(jù)怎么創(chuàng)建?有人會馬上想到數(shù)據(jù)傳遞啊,把A模塊的輸出寫到一個公共變量或者數(shù)據(jù)表中,B模塊從這里拿數(shù)據(jù)開始自己的執(zhí)行。是的,這是自動化測試工具提供的功能。可是,如果某次運行,模塊A有新的缺陷,造不出B預(yù)期的輸入數(shù)據(jù),會導(dǎo)致B的自動化腳本失敗。當(dāng)我們看到失敗后,是否費力排查下來才發(fā)現(xiàn)A才是B失敗的罪魁禍?zhǔn)祝慷绻?/span>A是成功的(A是否失敗要看是否有關(guān)于這個缺陷的相關(guān)驗證),則更具有蒙蔽性,很難快速想到問題可能出在A。這里舉的例子還相對簡單,若系統(tǒng)中模塊間的交互更多、更復(fù)雜,數(shù)據(jù)的問題、腳本的問題、程序本身的缺陷就象幾個毛線團(tuán)纏繞在一起,排查問題的根本原因?qū)⒑馁M大量的人力,并讓人沮喪。更有甚者,上游一失效,下游所有相關(guān)功能測試全部失敗,即使他們本來是沒有缺陷的。這樣的自動化也太脆弱了,簡直和天氣預(yù)報一樣經(jīng)常誤報啊!

    如 此看來,測試數(shù)據(jù)的依賴確實給我們添了不少亂子。那我們是否可以這樣做?即使本來兩個功能之間有數(shù)據(jù)的傳遞,也為每個單獨的功能預(yù)埋其輸入數(shù)據(jù)(而非依賴 上游在執(zhí)行過程中產(chǎn)生這樣的數(shù)據(jù))。這樣當(dāng)一個功能失效后我們能夠迅速定位到它。當(dāng)然,這樣做的一個風(fēng)險就是可能隱藏某模塊不能正確產(chǎn)生其它模塊希望的正確輸出,而這種問題對于用戶的端到端的操作是嚴(yán)重的問題。

    因此,我建議在多個腳本的測試數(shù)據(jù)上綜合使用以上兩種方法。“數(shù)據(jù)獨立”適用于測試不穩(wěn)定的功能(如新功能),或者容易出錯的功能(如老功能中復(fù)雜的邏輯),方便查找原因。“數(shù)據(jù)依賴”適用于測試穩(wěn)定的功能/接 口或者基本業(yè)務(wù)流程,有了它的保障,我們對端到端的正確性更有信心。當(dāng)“數(shù)據(jù)獨立”和“數(shù)據(jù)依賴”在一次運行中都有時,如果“數(shù)據(jù)獨立”的腳本失敗,我們 從“數(shù)據(jù)獨立”的單個腳本開始排查問題;如果“數(shù)據(jù)依賴”的腳本失敗,同時“數(shù)據(jù)獨立”的腳本也在相關(guān)處失敗,則從“數(shù)據(jù)獨立”的單個腳本開始排查問題, 否則從“數(shù)據(jù)依賴”的腳本處排查問題。

    posted @ 2011-10-25 14:41 順其自然EVO| 編輯 收藏

    僅列出標(biāo)題
    共394頁: First 上一頁 376 377 378 379 380 381 382 383 384 下一頁 Last 
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導(dǎo)航

    統(tǒng)計

    常用鏈接

    留言簿(55)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 久久久久久久岛国免费播放| 亚洲码和欧洲码一码二码三码| 亚洲综合色自拍一区| 亚洲精品无码av天堂| 亚洲国产精品碰碰| 亚洲国产婷婷综合在线精品| 又大又粗又爽a级毛片免费看| 国产亚洲福利一区二区免费看| 全亚洲最新黄色特级网站| 亚洲乱码国产一区网址| 国产亚洲精品资在线| 亚洲日韩精品无码专区网址| 亚洲AV无码一区二区二三区软件| 亚洲精品免费观看| 亚洲精品在线不卡| 亚洲人成网站色在线观看| 亚洲精品无码久久久久APP| 亚洲Av永久无码精品一区二区| 国产天堂亚洲国产碰碰| 日韩久久无码免费毛片软件| 黄 色一级 成 人网站免费| 182tv免费视频在线观看| 久久国产乱子伦精品免费一| 日韩精品免费一级视频| 午夜毛片不卡高清免费| 免费一级毛片免费播放| 亚洲人成网站在线观看播放| 久久亚洲精品无码aⅴ大香| 亚洲色成人四虎在线观看| 羞羞漫画在线成人漫画阅读免费| 久久九九免费高清视频| 久久w5ww成w人免费| 成人黄软件网18免费下载成人黄18免费视频 | 狠狠色伊人亚洲综合网站色| 久久久亚洲精华液精华液精华液| 一级毛片试看60分钟免费播放| 久久国产乱子伦精品免费不卡 | 人妖系列免费网站观看| 热re99久久6国产精品免费| 德国女人一级毛片免费| 国产精品V亚洲精品V日韩精品|