从其他应用程序调试到 C# 代码
我正在从QTP加载DLL(C#). QTP测试启动时,是否可以调试C#代码. 解决方案 是的,您可以在DLL中进行调试,但是您需要来源(除非您想查看拆卸),并且还需要pdbs(debug符号)来汇编.设置非常容易... 启动QTP应用程序 开始Visual Studio 打开源代码,并确保PDB与DLL 处于同一目录中 在vs中转到"调试菜单",然后选择"附件"到Process 在进程列表中,选择QTP进程,然后单击"附加" 在代码中设置断点 启动执行代码的测试,如果一切顺利,您应该达到断点 注意:如果未击中断点,则VS可能找不到PDB,您要么需要在VS中的选项中添加路径(或者可以找到它们). 另外,请尝试在工具 - >选项 - >调试选项页面中关闭"仅启用我的代码",如果它仍然无法正常工作(主要是您查看已释放的代码). 更新:回答评论...如果您转到工具 - >选项...在左侧的列表上选择"调试"并展开该评论,然后选择"符号",则可以添加那里
8 2024-04-17
编程技术问答社区
如何导入UFT API测试的数据文件?
我正在研究一个项目,该项目需要在运行时间动态导入测试数据并运行与测试数据相对应的API测试. 我尝试使用XMLLOAD直接从XML请求中加载的XMLLOAD.这似乎工作正常. 但是,就像我们导入测试数据的GUI测试一样,我希望对API测试进行相同的操作 - 我可以在其中动态从外部源导入Excel并将值输入请求. 我该怎么做? 解决方案 据我了解您的问题,您想从Excel文件加载测试数据.这就是我在以前的项目中所做的,但几乎没有什么不同,所以我希望这对您有用. 这些步骤将帮助您从Excel文件中驱动测试,例如,您将提供请求XML文件和其他测试数据的位置,例如: 执行标志 WSDL 终点地址 环境 等等... =========================================================== ======================== 从Excel文件导入数据的步骤: 开放 Data 窗格(
6 2024-04-17
编程技术问答社区
在vbscript中调用C# dll
我试图从QTP调用C#DLL(使用VBScript).我尝试了很多事情,没有成功: Visual Studio 2010 创建C#类Libary(St.Dll) 代码: using System; using System.Collections.Generic; using System.Text; namespace st { public class Class1 { public static int GetValue() { return 34; } } } regasm /codebase st.dll 失败',因为它不是有效的.NET组装' 在qtp/vbscript中,我尝试了 extern.Declare micInteger, "GetValue", "e:\st.dll", "GetValue" 返回消息:'无效过程调用或参
8 2024-04-15
编程技术问答社区
在vbscript中调用C# dll
我试图从QTP调用C#DLL(使用VBScript).我尝试了很多事情,没有成功: Visual Studio 2010 创建C#类Libary(St.Dll) 代码: using System; using System.Collections.Generic; using System.Text; namespace st { public class Class1 { public static int GetValue() { return 34; } } } regasm /codebase st.dll 失败',因为它不是有效的.NET组装' 在qtp/vbscript中,我尝试了 extern.Declare micInteger, "GetValue", "e:\st.dll", "GetValue" 返回消息:'无效过程调用或参
8 2024-04-15
编程技术问答社区
使用Chrome浏览器的Java脚本打开QTP(UFT)
以下是我用来启动QTP的代码,它与IE合作良好,但在Chrome中效果不佳. 我通过Chrome所做的更改是什么 var qtApp = new ActiveXObject("QuickTest.Application"); qtApp.Launch(); // Start QuickTest qtApp.Visible = true; 解决方案 Microsoft的VBScript与COM集成在一起,UFT也揭示了COM接口,这就是为什么您可以使用VBScript从HTML启动UFT的原因.但是,Chrome不支持VBScript,JavaScript并未与COM集成(至少不是Chrome的JavaScript). 因此,我认为使用Chrome从HTML页面启动UFT没有一种简单的方法.如果您编写Chrome Extension,这是可能的,但我认为这不值得. 其他解决方案 做到的一种方法是创建ASP.NET网站ASP.NET将支持使用CO
8 2024-04-04
编程技术问答社区
在一个已经打开的浏览器窗口中点击一个href链接
在下面的代码中,我尝试单击www.google.co.in网站中的"关于"链接(href).这在IE11(Windows 10)上起作用,但不适用于IE10(Windows 7).无论如何,这是否取决于机器.如果不是正确的代码? 请记住,我正在尝试单击已经打开的浏览器窗口中的链接. Set objShell = CreateObject("Shell.Application") IE_count = objShell.Windows.Count For x = 0 To (IE_count - 1) On Error Resume Next ' sometimes more web pages are counted than are open my_url = objShell.Windows(x).Document.Location my_title = objShell.Windows(x).Document.Title 'You
14 2024-04-04
编程技术问答社区
QTP/UFT-关闭除QC/ALM以外的所有浏览器
当前,我正在使用以下代码关闭所有浏览器,除了从我运行测试套件的ALM浏览器之外.但是,当我从ALM运行套件时,以下代码标识了2个浏览器-ALM浏览器和测试用例浏览器.它首先关闭测试用例浏览器,并在执行ALM浏览器的迭代时说,它说浏览器在尝试找到浏览器名称时未识别.我不确定为什么如果以后无法识别它,它将其视为浏览器.关于如何解决这个问题的想法? Dim oBrDes Dim oBrObjList Dim objIndex Set oBrDes=Description.Create oBrDes("micclass").Value = "Browser" Set oBrObjList=Desktop.ChildObjects(oBrDes) N = oBrObjList.count-1 For objIndex=0 to N If(oBrObjList(objIndex) is nothing) then 'Do Nothing
10 2024-04-03
编程技术问答社区
VBS文件不能通过cmd提示运行
Dim sTestCaseFolder, strScriptPath, sQTPResultsPath, sQTPResultsPathOrig sBatchSheetPath = "D:\Project\Driver Script\Batch.xls" sTestCaseFolder = "D:\Project\" sQTPResultsPathOrig = "D:\Project\Result\" '========== Create an object to access QTP's objects, methods and properties ========== Set qtpApp = CreateObject("QuickTest.Application") 'Open QTP if it is already not open If qtpApp.launched True Then qtpApp.Launch End If qtpApp.
8 2024-03-29
编程技术问答社区
如何从命令行运行QTP测试?
在某些情况下,我需要从命令提示符启动并运行QTP测试.例如,我想使用Windows Task Scheduler在整个晚上的不同时间运行QTP测试,但是(似乎)没有标志可以使用QTP.EXE打开并运行测试.我该如何完成? 解决方案 的确,使用QuickTest Pro,您不能直接通过调用C:\Program Files (x86)\HP\QuickTest Professional\bin\QTPro.exe "C:\Some Test\" 直接运行测试 但是,所有希望都不会丢失.有一种方法可以创建一个小型VBS文件,该文件可以在调用该VBS文件时运行任何任意QTP测试. 这比为每个测试创建一个批处理文件要好得多. '******************************************************************* 'RunThisTest 'by Michael Innes 'November 2012 testResourcePa
8 2024-03-29
编程技术问答社区
UFT在某些回放中不能识别一个窗口
我正在使用UFT中的描述性编程.在播放期间,我想检查Windows打印对话框是否确实显示.然后,我想单击该对话框中的"取消"按钮. 我的问题:零星的QTP无法识别打印对话框,因此单击"取消"按钮失败. 这可能有时会失败,有时会成功? 我的代码语法下面给出: Set Window_EnterMeter = browser_servicemanager.Window("regexpwndtitle:=Enter Meters.*") Set dialog_Print = Window_EnterMeter.Dialog("regexpwndtitle:=Print") Set winbtn_CalcelPrint = dialog_Print.WinButton("regexpwndtitle:=Cancel") fn chckprintpopupwndow() { ''''''''Navigating to that page call Abso
12 2024-03-21
编程技术问答社区
在浏览器/页面标题改变时进行QTP测试
我试图进行简单的测试,但失败了,因为我不知道如何处理在测试过程中更改的浏览器标题. 简单示例: Google>查找" Blabol" 完成后,QTP中的浏览器标题将其名称更改为" Google -Results ....".当搜索文本是一个变量,因为浏览器文本是硬编码,这显然是问题. 如果您明白了我的意思,我将需要"此浏览器"和"此页面"之类的东西. 谢谢 解决方案 用几个单词,您可以使用各种属性来识别QTP中的对象,并且可以使用正则表达式来增加更高的灵活性. 例如,在您的情况下,解决Web浏览器的可能方法将是以下内容. 1)寻址第一个浏览器窗口(首先打开)和任何页面 Set objBrowser = Browser("creationtime:=0") Set objPage = objBrowser.Page("title:=.*") 2)如果您假设自己始终与Google页面一起工作. Set objBrowser = Browser("ti
6 2024-03-21
编程技术问答社区
我们能否在远程机器上执行QTP脚本,并保持会话最小化?
我有几台我希望安排的机器.我需要远程访问这些计算机以进行自负.每当我从这些计算机上开始时,我的脚本都会失败.因此,只是想知道是否可以执行QTP脚本,同时保持会话最小化.如果是,则需要在脚本中进行哪些更改.谢谢. 解决方案 您面临的问题是,如果您最大程度地减少了显示屏,则删除计算机知道它没有显示屏,并且会忽略有关控制位置的任何问题和移动鼠标的请求.在某些情况下,QTP使用设备重播进行测试,这意味着测试将失败. 要解决此问题,您需要让远程机器认为它仍然附有某人.一种方法是(显然)不要最小化或关闭远程桌面会话.另一种方法是使用远程访问程序,该程序在最小化此类程序的免费示例时不会通知远程计算机,为其他解决方案 当您最小化此窗口时,操作系统将远程会话切换为无关模式,并且不显示窗口和控件.结果,测试无法与测试应用程序的GUI进行交互,因为在这种情况下实际上不存在GUI. 您需要更改计算机上的注册表键(即,您连接到远程QTP工作站的计算机).这是一个分步说明: 关闭计算机上
6 2024-03-21
编程技术问答社区
我们能否将 Citrix Program Neighbourhood 下的应用程序自动化?
我尝试使用QTP 9.5在Citrixl程序下可用的应用程序自动化一个应用程序,但是QTP并未识别应用程序内的对象.我们可以使用QTP自动化Citrix应用程序? 在Citrix应用程序上执行自动化测试的哪些不同工具? 解决方案 我已将SCAPA技术用于Citrix ICA或终端服务测试. SCAPA提供了一个安装在Citrix服务器上的自动化工具.然后,它具有启动Citrix会话的控制器,与服务器进行通信并启动调用您的自动化脚本的自动化工具.它实际上在服务器上运行,因此可以与应用程序控件进行交互. 其他解决方案 QTP仅在Citrix机器上安装Citrix,它不支持通过客户端工作. 出于技术原因,这是因为QTP需要能够收听Windows消息并将其DLL加载到某些无法从其他计算机上执行的应用程序. 其他解决方案 传统工具通常不适用于在远程桌面应用程序中运行的应用程序.不需要所需的接口.您唯一的选择可能是基于图像的工具,例如
8 2024-03-21
编程技术问答社区
你是如何编写QTP测试的?
我正在尝试将QTP用于某些WebApp UI自动化测试,我想知道人们通常如何编写QTP测试.您是否一起使用对象图,描述性编程,组合或其他方式?任何小代码示例都将不胜感激,谢谢 解决方案 这是我的建议. 1)构建您的测试自动化要求矩阵. 您可以使用我的博客中的样本 http://automation-beyond.com/2009/06/06/QA-TEST-AUTOMATION-REQUIREMENTS-USAISITY/ http:http://automation-beyond-beyond-beyond . http://automation-beyond.com/2009/06/08/QA-TEST-AUTOMATION-REQUIREMENTS-OBUSTNESS/ http://automation-beyond.com/2009/06/09/QA-TEST-AUTOMATION-REQAIREMENTS-SCACACALISIABIES/
8 2024-03-21
编程技术问答社区
我可以使用VBScript以外的语言来编程执行QTP测试吗?
我有VBScript代码,该代码启动了Quick Test Professional,执行一系列QTP测试并通过电子邮件发送结果.这效果很好,但是我更喜欢使用具有更好工具支持的语言(例如,良好的IDE).我目前正在从启动脚本中调用.NET库,因此我想知道是否可以使用C#这样的语言来完成相同的任务.如果是这样,有没有解决这个问题的好资源?通过Google,我几乎没有发现这个主题的很少,而且关于此主题的其他问题似乎没有其他问题. 为了清楚起见,我包括了大部分工作的例程代码.这不包括.NET声明,但是failedTestsList和allTestsList是System.ArrayList的实例. 编辑:所有QTP文档示例都使用VBScript,但是如您所见,代码只是创建QTP对象.我认为这些是从支持创建这些对象的另一种语言中可召唤的.似乎从我的Google失败中没有人这样做. Sub ExecuteQTPTest(name) Dim App, resultsPath
8 2024-03-21
编程技术问答社区
继续使用 Selenium IDE
我在一家小公司中工作,该公司的产品是一个相对简单的基于Web的软件.在过去的几年中,我们使用了硒IDE及其记录和播放功能.它提供了我们需要的98%.但是,既然硒IDE将不再工作几个月,我们必须找到另一种选择.我们考虑使用Selenium Webdriver,但是我们都不知道编程,我们只是没有时间足够快地学习它以维持当前的测试.因此,我们正在寻找至少具有以下功能的东西... 具有记录和播放功能(与编程相反) 可以支持多个网络浏览器(Firefox,Chrome,IE,Safari) 可以生成报告 将在未来几年继续得到支持 拥有大型用户社区或良好的公司客户服务 数据库连接将是不错的 希望我们可以导入现有的硒IDE脚本,而不是重写它们. 如果好的,我们愿意付款. 实际上有数十种软件选项,我没有选择一个软件的清晰途径.一些有希望的软件是... -Katalon录音机和工作室.它看起来像是硒IDE的绝佳替代品.但是它有小社区的帮助 -QTP-一位同事以前曾与此合作并推荐它
8 2024-03-21
编程技术问答社区
如何使用HP UFT在Powerbuilder窗口中选择特定元素
我正在尝试记录/自动化Sybase的PowerBuilder中开发的应用程序.我目前正在使用HP UFT v12.54. 使用默认记录过程,对象间谍仅在我的PB窗口上看到该区域,而不是特定的字段/下拉访问.简而言之,我无法在窗口中选择一个特定对象. 在 我正在尝试选择授权的签名字段,但是,UFT没有看到特定元素,而是字段区域客户数据. UFT仅通过XY轴而不是特定对象引用该区域中的字段.这是默认行为吗? 其他信息: 应用程序是在PowerBuilder V11.5 中开发的 任何输入都将不胜感激. 解决方案 PowerBuilder的DataWindow控件是一个特殊的自定义引导控件,无法从PB应用程序外部访问.它是内部管理的,PB(re)使用相同的Windows EditText一次进行一个值的输入,而仅在不使用标准Windows控件的情况下绘制其余数据,而是一种canvas. . 这是由于PB的初始便携式设计(过去曾适用于Solaris,MacOS
14 2024-03-21
编程技术问答社区
QTP忽略了输入字符数的限制
我现在在QTP上工作以测试联合国网站.有一个文本输入区域,可接受160个角色.当使用QTP输入长文本时,它不考虑限制,并且所有charactor都显示在该区域中.另外,该区域旁边还有一条消息,可以通知含有的字符数量,QTP输入后,此数字从未更改. 所以我想知道是否有人已经在这个问题上工作,可以给我一些建议.预先感谢. 艾伦 解决方案 正如汤姆所说的原因可能是QTP可能直接设置该值,但是A WebEdit不支持Type,因此您必须尝试其他方法. 为了使QTP更准确地模拟用户操作,您可以尝试切换到设备重播模式(如我的Setting.WebPackage("ReplayType") = 2 ' device replay Browser(X).Page(Y).WebEdit(Z).Set "Some text" Setting.WebPackage("ReplayType") = 1 ' return to event replay 其他解决方案 默认记录/播
10 2024-03-21
编程技术问答社区
如何在使用UFT/QTP时放大或缩小网页?
我想控制使用UFT测试的应用程序网页的缩放输入和输出功能.这是必需的,因为变焦级别动态变化,并且很难识别对象. 我找到了一个代码,但是如果您需要在一个实例或开始时更改缩放级别,这很有用.以下是代码 Function ChangeIEZoom Dim intZoomLevel, objIE intZoomLevel = 110 Const OLECMDID_OPTICAL_ZOOM = 63 Const OLECMDEXECOPT_DONTPROMPTUSER = 2 Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True objIE.Navigate ("www.google.com") While objIE.Busy = True wait 5 Wend objIE.ExecWB OLECMDID_OPTICAL_ZOOM, OLECMDEXECOPT_DONT
8 2024-03-21
编程技术问答社区