2012-05-18 74 views
0

,而這樣做的簡單的計算器應用程序編碼的UI測試中的數據驅動的模式,並加入肯定之後,我沒有得到我的測試結果通過我認爲這是由於「」(此十進制或點,這是已經存在於Windows Cal應用程序中)。編碼的UI測試計算器

因此,我只是想知道如何使所有類型的值,包括小數和整數的被錄取了編寫代碼。我的csv文件用於數據表是

input1  input2  expexted_add 
1.2   2.3  3.5 
2.4   2.5  4.9 
5.6   1.4   7  

這裏第一和第二行越過,但第三個越來越失敗。

+0

如果你得到你的數據(你說你成功地進入你的程序),什麼是將它添加的問題,並輸出它?如果出現錯誤,請告訴我們一些代碼,但我不明白添加兩個浮動塊會導致問題。 – Hidde

+0

感謝您的答案。 這裏是我用於datadriven測試的示例代碼。 this.UIMap.add_2_dec_numParams.UICalculatorDialogSendKeys = TestContext.DataRow [「input1」]。ToString(); this.UIMap.add_2_dec_numParams.UIItemEditSendKeys =「{add}」+ TestContext.DataRow [「input2」]。ToString()+「=」; this.UIMap.add_2_dec_num(); this.UIMap.add_asertExpectedValues.UIItemEditText = TestContext.DataRow [「expected_add」]。ToString()+「」; this.UIMap.add_asert(); – nks

+0

前兩行正在通過,因爲他們有小數。但在第三行的預期結果我需要使值7爲7,那麼只有它會被calulator接受..這就是問題,如果我這樣做這種方式 this.UIMap.add_asertExpectedValues.UIItemEditText = TestContext.DataRow [「expected_add」]。ToString()+「。」+「」; 那麼第三排將被傳遞和前兩行將失敗吶d eoor將顯示爲 expexted <3.5 >實際<3.5. > 預計<4.9 >實際<4.9. > 那就是problem.hopeü得到這一次 – nks

回答

0

我的猜測是,所用的斷言是比較字符串,而不是轉換爲整數或雙打,然後比較。 「7」和「7」的字符串比較。當然會失敗。

將您的聲明移出UIMap。然後在執行Assert.AreEqual之前將文本框和數據行的文本值轉換爲雙精度值。使用,如果你想避免被雙打浮點數一些誤報有增量的版本...

+0

問題wud解決了,如果我能寫「7.」在csv文件中,但它不可能。我們認爲我們可以將文本框更改爲字符串,因爲它是默認字符串的winedit項目。 – nks