QTP的101宗罪

VBS操作文件 数据库 文本文件的读取Option ExplicitConst ForReading = 1Const ForWritting = 2Const ForAppending = 8Dim fso,file,msgSet fso=CreateObject("Scripting.FileSystemObject")Set file=fso.OpenTextFile("d:/a.txt 阅读详情

 

QTP大牛Tarun Lalwani列举了QTP的101个不足:

http://knowledgeinbox.com/articles/qtp/general/101-limitationsenhancement-for-qtp/

 

其中涵盖了Object Spy、IDE、对象库及管理、脚本编写、AOM、Recovery Scenarios、测试报告、CheckPoint

 

其中一些是长期以来广大QTP爱好者深恶痛绝的,例如不能同时打开多个脚本进行编辑。

 

Object Spy Enhancements
1. Object spy to have an option to export all the objects in hierarchy with their properties and methods to a XLS/XML file. And also to have an option to reload this offline. This feature would help for others to analyze a object recognition remotely
2. Object spy to have the ability to run without QTP. Currently object spy can only be loaded through QTP
3. Object spy to have an option to disable the Auto spy. Currently hovering on any object displays it properties without the need to click the object. This at time gives poor performance while spying objects
4. Currently Object Spy button gets disabled when the script is run, one has to launch object repository and then launch Object Spy from there. The Object Spy should enable directly when the script is run
5. Object Spy Automation capability, so other tools can leverage the same and automate the OR creation based on custom rules
6. Object spy to have capability to spy on dynamically created objects. E.g. – The search suggestion box on Google
7. Object Spy to have facility to compare two different objects and show the differences
8. Object Spy to support XPaths for identifying objects

IDE Enhancement
9. Ability to open multiple scripts at one time
10. Project explorer with capability to create folder and organize resource inside them (library files, ORs, recovery scenarios) in them
11. Improved Intellisense for objects created through DotNetFactory
12. Intellisense for VBScript classes
13. Function folding and code folding in the IDE
14. Transition from Design mode to Run mode causes too many flickers in the IDE UI. This needs to be smooth
15. Ability to view code for Test flow in Expert view. This is currently only possible through Keyword view
16. Design time non-syntax error check for issues like Duplicate variable declaration etc
17. Intellisense of current associated libraries in all Libraries. Currently if Lib1 and Lib2 are associated with a Test. The Lib1 will only show Intellisense for Lib1 and not for Lib2. The Test will show Intellisense for both Lib1 and Lib2. This creates difficulty when Lib2 functions need to be called in Lib1
18. Custom Intellisense for parameters. E.g. if a framework creates GetObject method and that takes in keyword which is loaded from a external excel/XML file then to be able to provide Intellisense with those keyword
19. Script workflow diagram, something similar to keyword view but not at statement level but at function and action in flows
20. Ability to search called Actions in current script and go to the same. Current UI is very unfriendly in case too many actions are called in the script
21. Ability to specify default run results directory and avoid the dialog for run results location for every run. This gets very annoying when debugging the script
22. Input Parameters tab in Run dialog should remember the history of values used last time. Currently if Test/Component parameters are used and for debugging the same parameters value are updated before start the run, these values are lost next time run is initiated. This causes a lot of value update every time the script needs to be run for debugging
23. Ability to pause recording, currently when recording starts it can only be stopped. Having a feature to pause recording would help a lot

Object Repository Enhancements
24. Ability to create and load OR’s from QTP script itself
25. Ability to load Shared ORs dynamically to all the Actions. Currently RepositoriesCollection.Add methods adds the SOR to the current Action only and not other actions
26. Changes made through SetTOProperty in one Action does not get propagated to Next Action
27. Ability to enumerate all child objects present in the OR for a specified object
28. Ability to specify nickname for Objects. This would help get a complete object hierarchy through just the nick name
29. Ability to directly record objects into the SOR

Object Repository Manager Enhancements
30. Ability to load and save directly to OR in XML format
31. Ability for multiple users to access the Shared OR at the same time for updating
32. Export/Import of Checkpoints from one SOR to another
33. Merging of SOR’s to an existing SOR. Currently when two SOR are merged, the merged SOR needs to be saved as a different file
34. Ability to update code when conflict resolution renames object during SOR merge. In case object A and B are merged and name A is chosen over B, all scripts using name B needs to be updated manually

Scripting Enhancements
35. More options for other scripting languages i.e. JScript, VB.NET, C#.NET etc…
36. Support for start and finish events in Action and Test. E.g. – Test_Init, Test_Terminate, Action_Init, Action_Terminate. Currently this can be achieved through use of class but it would be easier for people to use if the functionality is built-in
37. Ability to execute specified VBScript even before the test execution starts. This script would run outside QTP and would help make changes to QTP settings that cannot be done during run-time. This would help in overcoming limitations like Libraries cannot be associated at run-time
38. Ability to execute specified VBScript even after the test execution starts. This script would run outside QTP and would help perform post execution code. This would be helpful in scenarios like sending email with the report
39. Ability to create error handler functions which are automatically called when an error occurs
40. Performance improvement when using Descriptive programming when compared to Object Repository usage
41. Ability to Debug libraries loaded during run-time using Execute, ExecuteGlobal and ExecuteFile
42. Ability to unload a library at run-time
43. Ability to register generic functions for any object type. Currently RegisterUserFunc can only be used to register the method for a single object type. So if a new Set method is created then multiple RegisterUserFunc statements need to be written. QTP should provided some way to use a pattern or something to apply the same method to multiple object types
44. Ability to Unlock a locked system from within the code
45. Ability to prevent screen locking during the execution
46. Ability to debug error which occurs during terminations of script. Currently any errors that occur during the termination of the script cannot be debugged and launches
47. Ability to Enumerate current Action parameters
48. Ability to Enumerate current Test Parameters
49. Ability to Enumerate current Environment parameters
50. Ability to Export environment variables to XML in code
51. Ability to save data directly to Design time data table
52. Ability to load Excel 2007 files into data table
53. Ability to Encrypt the script code
54. Ability to password protect the scripts
55. Ability to save the list of libraries open and the libraries to automatically open when opening the script
56. Ability to save the breakpoints and bookmarks with the script
57. Ability to move a script from write mode to read-only mode. Currently Enable editing button only enables read-only to write mode transition in tests/components/libraries and not vice-versa
58. Ability to execute in thread. Even one thread would do
59. Ability to call Windows API which require structures
60. Ability to Load/Unload add-ins at run-time
61. Add-in SDK documentation to create new add-ins
62. Ability to use a external excel file directly as a DataTable and have access to all the excel objects as well
63. Ability to pause/break a script. Similar to Debug.Assert method in VB
64. Ability to reconnect to QC automatically when the connect times out to the server
65. Built-in support for Web 2.0 and
AJAX

66. Ability to call one Test from another test
67. Auto include of SOR and Associated libraries when calling a external action present in some other script
68. Ability to clear session cookies of a browser without closing the browser
69. Ability to get the stack trace in the code in case of an error
70. Improvement in error messages in case of general error messages
71. Ability to get the current function name from inside the function
72. Ability to get the time taken by a transaction when using Services.EndTransaction
73. Ability to do OCR on images (captcha) and convert them to text

QTP AOM Enhancements
74. Ability to open Business process script in QTP
75. Ability to open/close library file in UI using AOM
76. Ability to create a library file through AOM and add code to the same
77. Ability to create, open and modify a BPT Application area through AOM
78. Ability to set/delete breakpoints in IDE using AOM
79. Ability to change any option at run-time and having the change impacted instantly
80. Ability to convert a BPT component to a normal test using AOM and through UI as well

Recovery Scenarios Enhancements
81. Recovery scenarios (RS) to run in a separate thread. Currently recovery scenarios run in the same thread as QTP. This causes recovery scenarios to be useless in case a Modal dialog blocks QTP
82. Option to stop chaining in recovery scenarios. Currently if RS1 and RS2 both match the trigger criteria then both of the scenarios are executed. There is no way to specify that RS2 should not be executed if RS1 is executed
83. Currently there is no way to enumerate recovery scenarios present in a File
84. Recovery scenarios don’t work when they are associated at run-time
85. Ability to test the RS trigger from the UI. This would help debug in debugging the issues when recovery scenario does not get fired

Test Reporting Enhancements
86. Ability to create reports in different format. Excel, Word, HTML etc…
87. Reporting of errors or failure in different categories and priority. E.g. – Reporting a error with severity, priority and category (Application, Script, Validation, Checkpoint)
88. Exact location of the error in the script. This should include the line of code, error number, error statement
89. Direct ability to send report to a specified list of email addresses when the test end
90. Currently the reports can only be viewed through QTP reporter viewer and cannot be viewed on machines without this tool. Report should be made completely Web compatible so that I can be viewed in any browser in the same way it is displayed in report viewer
91. Ability to view status of current Action. Currently Reporter.RunStatus only provides the status of whole test and not for current action
92. Ability to enumerate the current status from within a Test i.e. Actions executed with details, checkpoints executed with details, recovery scenarios executed with details
93. Hosting web server to capture and display script status in batch
94. Ability to report to a existing result file
95. Ability to override the Action Name in reports
96. Ability to specify the time zone to be used in reports
97. Ability to specify the results path during the run

Checkpoint Enhancements
98. Ability to alter properties of all checkpoints during run-time. E.g. Expected bitmap of a bitmap checkpoint, expected values of a Table/DB checkpoint etc
99. Ability to create checkpoints at run-time
100. Ability to load checkpoints from a external file at run-time
101. Ability to enumerate all checkpoints present in current script

 

 

 

 

 

MATLAB实战:蓝牙GFSK调制解调全流程解析(附误码率优化技巧) 本文深入解析了蓝牙GFSK调制解调在MATLAB中的全流程实现,包括高斯滤波器设计、调制解调技术及误码率优化技巧。通过实战案例和代码示例,帮助工程师提升蓝牙通信系统的性能表现,特别是在降低误码率方面的有效方法。 阅读详情

相关推荐

Zemax实现微透镜阵列光束整形(原理+仿真)

通过Zemax实现微透镜阵列的光场整形仿真。

VJCP_90909Bu0的博客 1万+

使用 MATLAB Coder App 生成 C 代码

目录 使用MATLABCoderApp 生成 C 代码 教程文件 为MATLAB函数生成 C 代码 运行原始MATLAB代码 使MATLAB代码适用于代码生成 打开MATLABCoderApp 并选择源文件 定义输入类型 检查运行时问题 生成 C 代码 查看 Finish Workflow 页面 将生成的 C 代码与原始MATLAB代码进行比较 为可变大小输入生成 C 代码 接下来的步骤 使用MATLABCoderApp 生成 C 代码 在本教...

jk_101的博客 5368

YOLOv8-seg模型后处理实战:从输出解析到mask生成的完整流程

本文详细解析了YOLOv8-seg实例分割模型的后处理完整流程,从理解output0与output1的双输出结构,到实现检测框的置信度过滤、坐标转换与NMS,再到核心的掩膜生成数学原理与矩阵乘法实现。文章深入探讨了如何将掩膜系数与原型掩膜库结合,生成像素级分割结果,并提供了掩膜上采样、边缘优化、性能提升及解决实际应用难题的实战方案。

xgboost6farmer的博客 317

使用 MATLAB Coder App生成MEX函数

使用MATLABCoderApp 生成 MEX 函数的工作流 步骤 操作 详细信息 1 设置MATLAB®Coder™工程。 设置 MATLAB Coder 工程 2 指定编译配置参数。将Build type设置为 “MEX”。 配置工程设置 3 编译工程。 编译 MATLAB Coder 工程 MATLAB Online™不支持MATLAB CoderApp。要在...

jk_101的博客 2295

避开这些坑,你的Python爬虫才能稳定爬取IEEE Xplore(含反爬策略与MongoDB存储实战)

本文详细介绍了如何构建稳定的Python爬虫系统以爬取IEEE Xplore学术论文,包括反爬策略、MongoDB存储优化和断点续传机制。通过动态等待时间算法、请求头指纹管理和会话保持策略,有效应对IEEE的反爬机制。同时,优化MongoDB数据结构和索引,提升存储效率。最后,强调法律合规与伦理考量,确保爬虫合法合规运行。

weixin_29031057的博客 1095

RK3566添加ffpeg【Buildroot系统】

有很多人都发现了RK3566系列的芯片是不可以直接使用ffmpeg官网源码的!会报错: Not a video capture device. /dev/video0: No such device 接下来我们就来解决这个问题!!

honmy18的博客 4069

[QTP]vbscript对文件或文件夹进行打包与解包

vbscript对文件或文件夹进行打包与解包 在自动化测试工作中,有时会用到对文件或文件夹进行打包或解包,经过一番研究,我们可以通过CreateObject非常轻松地实现所需要的功能。 首先,需要在操作系统中注册XZip.dll,以管理员身份:Regsvr32 "XZip.dll文件路径" 在http://www.xstandard.com/en/documentation/xzip/地址可...

mmdev 180

科研软件|Adobe Photoshop 2024 (PS 2024)

科研软件|Adobe Photoshop 2024 (PS 2024)

m0_55499682的博客 5508

基于MATLAB Coder将matlab代码转换成C代码

MATLAB Coder可以从MATLAB代码生成独立的、可读性强、可移植的C/C++代码。本文基于matlab2015a编制,但是也适用于matlab 2014~2016的版本。 1. 使用MATLAB Coder产生C代码的4个步骤: (1) 开发实现特定算法功能的MATLAB代码及其测试文件; (2) 检查MATLAB代码的兼容性,确保MATLAB代码中的语句都能被转换成C代码(有些m

zyqdragon的博客 6万+

Python 爬虫教程:抓取交通流量和道路信息

Scrapy是一个强大的爬虫框架,适用于大规模的爬虫任务。它提供了高效的数据抓取和存储功能,支持数据清洗和解析操作。Scrapy特别适合用于抓取开放的API接口和数据流。

2201_76125261的博客 2233

学Simulink--基于机器人与自动化系统的场景实例:六自由度机械臂的逆运动学控制仿真

摘要:本文详细介绍了在Simulink中实现六自由度机械臂逆运动学控制的仿真方法。通过构建包含机械臂模型、路径规划器、逆运动学求解器和控制器等模块的系统,利用MATLAB Robotics工具箱进行建模。文章逐步讲解了从模型创建、轨迹规划、逆运动学求解到控制器设计的完整流程,并提供了性能评估标准。该方法能有效验证逆运动学算法,优化机械臂控制策略,提高操作精度和效率,为机器人自动化系统开发提供实用参考。

xiaoheshang_123的博客 230

qtp10 安装笔记

windows10系统安装QTP 10 1QTP10 程序文件夹下,找到“setup”双击它运行安装程序-点击 否 继续安装 2 安装必要组件 3 下一步 选择安装程序目录-安装插件 直到完成安装 4出现证书安装界面,勾选单机许可证,点击下一步继续; 5根据操作系统位数的不同,在不同的目录下创建“License Manager”, 如果是64位系统,则在此目录下“C:\Progr...

weixin_30815469的博客 190

YOLOv11改进策略【注意力机制篇】| 2024 蒙特卡罗注意力(MCAttn)模块,提高小目标的关注度

本文记录的是基于蒙特卡罗注意力(MCAttn)模块的YOLOv11目标检测改进方法研究。利用提高的跨尺度特征提取能力,使模型能够更好地传递和融合提取的多尺度特征,提高对小目标的关注度。Exploiting Scale-Variant Attention for Segmenting Small Medical Objects使用一种基于随机采样的池化操作来生成尺度无关的注意力图。它从三个不同尺度(3×33×33×3、2×22×22×2和1×11×11×1,即池化张量)中随机选择一个1×11×11×1注意力图

Limiiiing的博客 3600

QTP ASCII CHR() CODE CHART

Common ASCII codes for QTP QTP CODE SYMBOL DESCRIPTION Chr(34) " Double Quotes Chr(10)   Line Feed Chr(13)   Carriage Return Chr(32)   Space     Cha...

weixin_33696106的博客 173

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

实验四+101+谢艳敏

一、实验目的 1) 学习QTP工具的使用 2)了解黑盒自动化测试 二、实验要求 (1)对被测程序进行黑盒测试用例设计 (2)对QTP的飞机订票系统的任一界面或控件实现自动化测试。(测试的具体自选) (3)写出该程序的缺陷。 三、实验内容 1、对QTP的样例小程序飞机订票系统,实现自动化测试。(学号被3整除,测3a;余1,测3b;余2,测4a) 2、要求: ...

weixin_30920091的博客 174

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

构建 QC + QTP 自动化测试框架 3: QTP 如何读写文本文件和Excel以及操作数据库

QC 运行 QTP 脚本是不带参数的,因此当我们构建自己的框架,需要灵活配置一些东西的时候,需要在QTP中读取外部文件,清除和准备数据时需要操作数据库。 下面是简单实现代码,适用于10.0. 1,读取文本文件 加一个配置文件存放测试 Url 和数据库连接字符串 Dim fso, SettingFile,TestUrl,DBConnectionStringSet fs...

weixin_30847939的博客 125

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

从零到一:基于MercuryTours的QTP自动化测试脚本实战演练

本文详细介绍了从零开始基于MercuryTours网站的QTP自动化测试脚本实战演练,包括环境准备、脚本录制、增强脚本可靠性、调试技巧及实际项目经验。通过具体案例和代码示例,帮助读者快速掌握QTP自动化测试的核心技术,提升测试效率与脚本稳定性。

weixin_30920513的博客 501

QTP中常用的随机数生产函数

Dim MyValue '定义一个随机数 Dim i Randomize '初始化 For i=0 to 100 MyValue = int( (10000-1000+1)*Rnd+1000) '生产最大值为10000最小值为1000的随机数 print MyValue Next

系统运维 155

qtp:操作mysql数据库时,提示"str open sql.conn对象打开时,不允许操作的解决方法...

在我们写qtp代码连接mysql数据库的时候有可能会遇到一些问题,如图,下面就是我在工作上遇到的一个问题: 当遇到这种问题时,我的问题是因为我在循环,而我的数据集对象又在for循环的外面,所以造成在第二次循环的时候提示上面那个错误。 解决方法: 既然是循环取值,那么数据集的对象的创建就应该写 在for循环里面,数据集的关闭也是如此 Dim Conn,str,sql Set Conn=...

weixin_33724059的博客 216

mysql对象关闭时不允许操作_qtp:操作mysql数据库时,提示"str open sql.conn对象打开时,不允许操作的解决方法...

在我们写qtp代码连接mysql数据库的时候有可能会遇到一些问题,如图,下面就是我在工作上遇到的一个问题:当遇到这种问题时,我的问题是因为我在循环,而我的数据集对象又在for循环的外面,所以造成在第二次循环的时候提示上面那个错误。解决方法:既然是循环取值,那么数据集的对象的创建就应该写 在for循环里面,数据集的关闭也是如此Dim Conn,str,sqlSet Conn=CreateObject...

weixin_39636718的博客 364

虚拟交换缓存不足导致qt编译失败

【代码】虚拟交换缓存不足导致qt编译失败。

Stay fool & simple 939

基于C#的旅行规划记录管理系统 课程论文+答辩PPT+项目源码及数据库文件

本文介绍了一款旅游管理软件的项目说明、需求分析、概要设计和界面设计。项目主要功能包括地图管理、待办管理、日志管理和回忆板块,用户可进行旅游路线规划、记录待办事项、上传旅游图片并添加注释、分享旅游经历及回顾旅游记忆。软件仅支持PC端,硬件需求为Intel i7处理器和NVIDIA GeForce GTX显卡,软件环境包括Visual Studio开发工具、QTP测试工具、Windows10操作系统和MySQL数据库。项目设计涵盖了功能模块、核心类图和界面设计,旨在为用户提供全面的旅游管理体验。

毕业作品网站 937

校招失败后,在小公司熬了 2 年终于进了阿里,竭尽全力(测试岗)

其实两年前校招的时候就往阿里投了一次简历,结果很明显凉了,随后这个理想就被暂时放下了,但是这个种子一直埋在心里这两年除了工作以外,也会坚持写博客,也因此结识了很多优秀的小伙伴,从他们身上学到了特别多东西,把这次面试分享出来,也是希望可以帮助到更多的人。

自动化测试技术栈 3535

vbs基本编程

【常量变量的定义】 '常量变量的定义 Option Explicit '强制变量声明,有了此语句必须申明变量再使用 Dim opera,operb,result '一般,也可以不声明直接使用变量 Const vbPI=3.14 '常量 前面加vb或者con一般表示是常数 opera=InputBox("please input a's value") operb=InputBox("ple

不远远方 1366
上一篇: QTP10的Tips.txt文件
下一篇: 自动化测试框架开发5步法
TIB
TIB
博客等级 码龄19年 2879粉丝 957原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值