我已经在这个问题上乱哄哄几个小时,我无法理解.使用XPath查找文本值很棘手,这个问题有太多的移动部分.
我有一个包含大表的网页,此表中的一个部分包含分配给特定单元的用户(受理人)列表.几乎总是有多个用户分配给一个单元,我需要确保将特定用户分配给表中的任何单元.我已经将几乎所有的选择器都用到了XPath上,而且我已经在这个问题的一半了.我似乎无法弄清楚如何使用contains与text()在此背景下.
这是我到目前为止所拥有的:
//td[@id='unit']/span [text()='asdfasdfasdfasdfasdf (Primary); asdfasdfasdfasdfasdf, asdfasdfasdfasdf; 456, 3456'; testuser]
Run Code Online (Sandbox Code Playgroud)
上面的XPath查询捕获了我正在查看的特定部分中的所有文本,这很好.但是,我只需要知道testuser是否在该部分中.
我正在将一些遗留的Watir脚本迁移到Watir-Webdriver.除了他们如何设计Watir-Webdriver来处理弹出窗口之外,迁移已经很顺利.他们不是使用经过验证的"附加"方法,而是使用简化的"窗口"方法替换它.语法非常简单,但是我很难理解如何在不关闭父窗口的情况下关闭单独的子窗口.目前我的代码是这样的 -
b.button(:xpath => PREVIEWBUTTON).click
b.window(:title, POPUPWINDOW).use DO
b.close
end
Run Code Online (Sandbox Code Playgroud)
目前发生的事情是b.close方法正在关闭子窗口和父窗口.我不确定为什么会发生这种情况,因为b.close方法包含在DO块中.我需要验证'PREVIEWBUTTON'确实创建了一个子窗口,但我需要父窗口保持打开状态.
我公司最近开始了解TFS的使用,源代码控制和分支策略.我们目前的分支策略是基本的"Dev> Main> Release"方法,适用于我们的小团队.但问题在于我们的自动化测试.我们所有的集成测试和UI测试都是用C#编写的,并在每晚构建过程中执行.为了保持源清洁和良好保存,我们应该在哪里放置自动化测试代码?
这是我正在使用的:
Dim connstr = "data source=mydatasource;initial catalog=gcs_dw;persist security info=True;user id=myuser;password=mypassword;Asynchronous Processing=True"
Dim sqlquery = "SELECT * FROM Customer WHERE CITY = 'Anytown'"
Dim connection As SqlConnection = New SqlConnection(connstr)
connection.Open()
Dim command As SqlCommand = connection.CreateCommand()
command.CommandText = sqlquery
Dim reader As SqlDataReader = command.ExecuteReader()
reader.Read()
Console.WriteLine(reader.ToString)
connection.Close()
Console.Read()
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,我正在尝试将查询结果显示到命令行,目前显示的只是"System.Data.SqlClient.SqlDataReader".我的SQL查询的结果在哪里,为什么我无法检索它们?