编码UI测试用双精度替换整型字符串



我正在为一个网页编写测试,我正在用csv值替换记录步骤中的一些值。

问题在于我得到了这个值:

public string UITboxNDocEditText = "866700228007551009280449220150921009003761527571";

在csv中我得到了这个值:

866700000007551009280449220150921009000001527571

我用来替换值的行是这样的:

this.UIMap.InsBDFParams.UITboxNDocEditText = TestContext.DataRow["n_b"].ToString();

问题是脚本写的是这个值: 8,66700000007551e +47

我尝试将TestContext.DataRow行转换为string,而不是使用.ToString()方法,像这样:(string)TestContext.DataRow["n_b"];但得到了一个错误,抱怨从双精度转换,所以我认为脚本正在考虑我的值是双精度。

您可以使用格式说明符来格式化字符串,F0, 0表示小数点后0位:

 this.UIMap.InsBDFParams.UITboxNDocEditText = 
        ((double)TestContext.DataRow["n_b"])
              .ToString("F0");

发现用双引号封装866700000007551009280449220150921009000001527571解决了这个问题:

"866700000007551009280449220150921009000001527571" .

我认为它把它当作一个字符串,所以它不会弄乱数字

最新更新