我们需要真正的脚本语言

自动安装kuwo2013脚本 自动安装脚本,Au3新手,希望支持一下下,谢谢大家 立即下载
 
我们需要真正的脚本语言
陈能技
2007-9-8
 
原文: Hey Vendors, Give Us Real Scripting Languages - Bret Pettichord
 
大部分测试工具绑定了工具生产商指定的特定脚本语言,我们叫它厂商语言。这些语言很难学,实现得很弱,最重要的是,它们不鼓励测试员与开发人员之间的合作。测试员应该得到全特性的、标准的测试开发语言。为什么呢?
 
现在市面上的大部分测试工具,我们在使用时都要使用工具的脚本语言。令我最烦恼的是,为了使用他们的工具,我必须学习指定的脚本语言。大部分工具有录制功能,为你产生一些脚本,但是不可避免地,你要对脚本进行修改,自己编写脚本。这样的话,你就必须要学习额外的语言-厂商语言-这个语言只是在这个特定的工具上能使用!
 
破坏合作
因为厂商语言是特定的语言,开发人员对其知之甚少并且也不愿意学习它。我经常鼓励测试员和开发人员在自动化项目中一起合作。这是高效的合作方式。但是厂商语言挡在中间。它们把测试员和开发人员分开,孤立在指定的工具语言上。减少了共享、合作和改进的机会。
 
要把测试员和开发人员整合在测试过程中,我们已经有很多困难了。现在又多了个厂商语言的学习问题。你如果叫一个开发人员学习VB?没问题,因为他们毕竟可以在将来有使用得上的机会。你如果叫一个开发人员学习一个指定的语言,这个语言只能在这个工具上使用?你做梦吧!你已经很难让开发人员把注意力放在测试上了,现在又增加了一个困难。
 
为什么要把钱花在一个会破坏测试员与开发人员之间的合作关系的工具上?
 
方言
有很多这种厂商脚本的方言。有些是类C语言。意味着什么?意味着写出来的代码想C语言的代码,但是没有指针,所以你不能使用在C课程和书本上学习到的任何复杂的数据结构。C作为脚本语言来说是很差的。它是编译的,但是测试脚本语言是解释执行的。这是为什么类C语言不支持指针。
 
其它的有些使用类VB语言的方言。如果你了解VB,则代码会看起来很眼熟,但是你不能使用VB的标准库。而且,你在VB中学到的东西未必被应用在厂商脚本语言上。
 
也有一些工具使用类似面向对象的厂商脚本语言。面向对象是好的,但是你会发现对一个类的修改不会继承到它的子类。什么?因为厂商脚本语言认为这样更方便测试的管理安排。这样是否真的能帮助测试员还有待讨论,但是测试员真正需要的不是为测试特定设计的语言。他们应该得到标准的语言实现,这样才会更好地帮助他们的测试工作。
 
一些更新的测试工具现在开始使用真正的脚本语言,像JavaScript或VB。我希望这种趋势能继续下去。而且,如果一些旧的工具能重新设计以支持标准语言则会更好。标准语言有正式的规范,会帮助你的测试组更好地用在测试上。
 
重复地发明轮子
最近有些文章在描述怎样使用厂商脚本添加堆栈和队列,这其实是厂商脚本的落后体现。厂商语言使自动化测试人员浪费很多时间和精力在重新发明轮子。堆栈和队列在标准语言上已经得到很好的实现。
 
我自己也有同感。我必须为不同的厂商语言创建库来支持sting操作、日期计算、计算排列组合等。有些厂商语言也有这样的库,但是标准语言的库会更大、更全面,也更加健壮。
 
回到以前
很多非测试工具也嵌入了厂商语言。使其更难使用。 John Ousterhout 发明了 TCL ( Tool Control Language ),使得跟 C 的集成更容易,并发布到公共领域。 TCL 现在被用在一些公共领域的测试工具上。
 
Ousterhout区分了系统编程语言(像Pascal、C、C++、Java等)和脚本语言(像Perl、Python、Rexx、TCL、VB、Unix shells等)。系统编程语言在从头开始构建方面和性能方面会更好点。而脚本语言在重用代码和快速开发方面有优势,是理想的自动化测试语言。
 
有些测试工具的厂商语言是在 Ousterhout 的 TCL 出现之前,当时 Perl 也还不成熟。但是那是那时候,现在则有了很多选择。
 
让厂商脚本语言退休
因为有了很多的选择,所以厂商脚本语言应该退休了。如果出现异常,没有什么第三方的书可以使用,只能参考和依赖厂商提供的书或帮助文档,这些文档未必会坦白告诉你厂商脚本语言的缺点。语言的课程也很难随工具附上,很昂贵,可能还要你亲自去学习。
 
测试自动化会很难,如果我们需要熟悉不同工具的不同语言的话。开发人员不会忍受有这么多限制和缺点的编程语言,我们也不应该忍受。
 
进一步学习请参考:
Scripting: Higher Level Programming for the 21st Century, John K. Ousterhout, IEEE Computer, March 1998.
Breaking the Language Barrier, Christopher Meisenzahl and Ferry Firmansjah, STQE magazine, Nov 2000.
 
 
 
UniApp X 网络请求避坑指南:从 JS 到 UTS 的 JSON 数据处理全解析 摘要:UniAppX开发中处理JSON数据时,UTS强类型特性要求开发者改变JS习惯。本文对比两种主流方案:1)UTSJSONObject通过keypath访问数据,兼容JS但缺乏类型提示;2)type+泛型方案,通过定义数据类型实现强类型校验和智能提示,推荐用于固定数据结构。文章详细演示了两种方式的具体实现、转换方法及实战案例,并提供了类型定义技巧和注意事项,帮助开发者编写更稳定高效的跨平台应用。 阅读详情

相关推荐

【DDSCAT——离散偶极近似仿真程序04】参数理解和模型设计

在这一部分,我们开始理解DDSCAT程序设计中的一些参数问题。 承接第二部分内容中的ddscat.par文件,我们来聊一聊偶极子、实际体积、有效半径等关键词。 一、偶极子点阵 手册中说,我们需要设计模型(target/目标),它是有偶极子点阵组成的。偶极子,顾名思义,是由一对电荷组成的,但我们不用设计一对,我们设计一个点就行,...

XD_Yangf的博客 7552

[杂谈]脚本语言在游戏发展中的作用

看一篇关于游戏脚本写的挺不错的文章,收藏一下     转载自: http://bbs.a9vg.com/thread-1640565-1-1.html    之前提到要写一篇关于脚本语言技术的文章,我也确实认真的写了,只是完成之后我发现,这篇文章实      在是太“专业”了一些。且不说读者是否能够理解,单就趣味而言,这篇文章也是索然无味。   我想,其实脚本语言并非游戏开发中的

u010450926的专栏 1646

2024最新指南:如何用Python批量下载Sentinel-2数据(附避坑清单)

本文提供2024年最新Python批量下载Sentinel-2遥感数据的完整指南,涵盖环境配置、API准备、核心下载流程实现及实战避坑清单。通过智能查询器、断点续传下载器等实用工具,帮助用户高效获取遥感数据,避免常见网络问题和数据完整性验证失败。

silver的专栏 618

脚本语言是什么

什么叫脚本转载自网络,地址不详!!! 脚本script是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。脚本通常可以由应用程序临时调用并执行。各类脚本目前被广泛地应用于网页设计中,因为脚本不仅可以减小网页的规模和提高网页浏览速度,而且可以丰富网页的表现,如动画、声音等。举个最常见的例子,当我们点击网页上的E-mail地址时能自动调用Outlook Expre

新新 2万+

优化相机姿态和三维点云的Bundle Adjustment算法及其编程实现

重投影误差是指将优化后的相机姿态和三维点云投影到图像平面上,与对应的图像特征点之间的距离。Bundle Adjustment(捆绑调整)是一种用于同时优化相机姿态和三维点云的算法,它可以提高三维重建和相机定位的精度。下面是一个简单的Python示例代码,演示了如何使用Bundle Adjustment算法优化相机姿态和三维点云的参数。通过以上步骤,Bundle Adjustment算法可以不断地优化相机姿态和三维点云的参数,从而提高重建和定位的精度。Bundle Adjustment算法的编程实现。

CyberXZ的博客 740

液滴碰撞壁面的过程背景论文——bouncing反弹,spreading扩展,splashing飞溅。铺展过程介绍。还存在很多未解之谜。

【1993-德国-Phenomena of liquid drop impact on solid and liquid surfaces】液滴碰撞壁面的过程背景——bouncing反弹,spreading扩展,splashing飞溅。还存在很多未解之谜。还存在很多未解之谜。不同液滴形状碰撞过程。

qq_15963745的博客 199

学习shell脚本语言的第一天

1.python使人秃头 2.python使人秃头 3.python使人秃头 4.生活的调剂 今天学习shell基础语言 ----------------------------------我是分界线------------------------------------------- 一.开始 shell程序在学校都是单行命令的形式来执行(缺乏逻辑关系) 区别: 使用...

weixin_30455661的博客 223

21、使用 FastHenry 进行片上电感器的模拟与参数预测

本文介绍了使用 FastHenry 对片上电感器进行模拟和参数预测的方法。讨论了 FastHenry 的适用场景、线圈几何形状的选择与离散化方法,以及如何考虑模拟中的寄生效应。同时对比了 FastHenry 和 Magnet 在不同基板电阻率下的模拟精度,并提出了优化电感器设计的策略,为高效准确地预测电感参数提供了技术指导。

y9z0a1b的博客 292

什么是脚本语言

HTML通常用于格式化和链结文本。而编程语言通常用于向机器发出一系列复杂的指令。 2.脚本语言与编程语言也有很多相似地方,其函数与编程语言比较相象一些,其也涉及到变量。与编程语言之间最大的区别是编程语言的语法和规则更为严格和复杂一些. 3.与程序代码的关系:脚本也是一种语言,其同样由程序代码组成。 注:脚本语言一般都有相应的脚本引擎来解释执行。 他们一般需要解释器才能运行。JAVASCRIPT,A...

一只苟延残喘的卑微蝼蚁 8755

Lammps实现甲烷与水的竞争吸附-循环不同气体分子

Lammps实现甲烷与水的竞争吸附

Rockyoung 5374

Ubuntu\linux,加载mcp2515的驱动,链接mcp2515,mcp2515的这个驱动默认在linux内核中。jetson nao、香橙派、树莓派

3. 其他文章,还要进行驱动编译就比较复杂了(不推荐)1.树莓派+MCP2515+

pvmsmfchcs的博客 1563

了解一下脚本语言

脚本语言(Scripting Language)是一种用于编写脚本(脚本是一系列按照特定顺序执行的命令或指令)的计算机编程语言。与编译型语言不同,脚本语言的代码不需要事先通过编译生成机器码,而是在运行时由解释器逐行解释执行。

嗯... 4060

Gbase 8a GDCA考试真题100%

本文整理一些Gbase 8a中非常易错得考试真题及答案,而且都是不好搜的。加粗的是正确答案。

打工之路,一路生花 4300

脚本语言

文章目录产生原因什么是脚本语言特点实际应用常见的脚本语言参考文献 产生原因 使用 Unix 系统的有些人发现他们一直在重复的敲入类似的命令,所以有人就发明了“脚本”这东西。它的设计初衷是“批量式”的执行命令,你在一个文件里把命令都写进去,然后执行这个文件。可是不久人们就发现,这些命令行其实可以用更加聪明的方法构造,比如定义一些变量,或者根据系统类型的不同执行不同的命令。于是,人们为这脚本语言加入了...

u013617791的专栏 1942

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

脚本语言详解

脚本语言以其独特的优势和广泛的应用场景,在软件开发与自动化处理领域发挥着不可替代的作用。随着技术的不断进步和需求的持续演变,脚本语言将继续保持其活力和创新力,为开发者提供更加高效、智能的编程体验。我们期待在未来看到更多优秀的脚本语言项目涌现,共同推动软件开发领域的繁荣与发展。同时,作为开发者或自动化工程师的我们,也应不断学习和掌握新的脚本语言和技术,以适应不断变化的市场需求和技术挑战。博主:Python老吕优快云网站为我们搭建了一个如此卓越的学习平台,使我们有机会分享知识与经验。

Python老吕的博客 4987

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

html脚本语言有哪些,常见的脚本语言(有哪些)

常见的脚本语言脚本言语:脚本言语又被称为扩建的言语,或者动态言语,是一种编程言语,用bai来操控软件应用程序,脚本通常以文本(如ASCII)保存,只在被调用时进行解说或编译。言语分类:Shell脚本:此类脚本用于自动化工作操控,即发动和操控体系程序的行为。大多的脚本言语解说器也一起是命令行界面,如Unixshell和MS-DOSCOMMAND.COM。其他如AppleScript,可以为体系添加脚...

weixin_33240360的博客 2891

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

脚本语言的种类

脚本语言的种类 一、编译型语言 定义:指用专用的编译器,针对特定的操作平台(操作系统)将某种高级语言源代码一次性翻译成可被硬件平台直接运行的二进制机器码(具有操作数,指令、及相应的格式),这个过程叫做编译(./configure make makeinstall );编译好的可执行性文件(.exe),可在相对应的平台上运行(移植性差,但运行效率高)。。 典型的编译型语言有, C语言、C++等。 ...

qq_44865616的博客 8906

什么是“脚本语言”

一、脚本 脚本语言又被称为扩建的语言, 或者动态语言, 是一种编程语言, 用来控制软件应用程序, 脚本通常是以文本 (ASCⅡ) 保存, 只是在被调用时进行解释或者编译。当执行脚本时,计算机会执行一连串的操作。这些操作可能只涉及 Illustrator,也可能涉及其他应用程序,如文字处理、电子表格和数据管理程序。Illustrator 可支持多种脚本环境(例如,Microsoft Visual Basic、AppleScript和 JavaScript 等),且内含标准的脚本组合。用户也可...

weixin_44638133的博客 1万+

2023年最受欢迎的13种脚本语言

脚本语言是一种特殊的计算机语言,你可以用它来向其他软件发出指令,如网络浏览器、服务器或独立的应用程序。今天许多最流行的编码语言都是脚本语言,如JavaScript、PHP、Ruby、Python和其他一些语言。

WPHunter的编程技术资料库! 7525

什么是脚本语言?

脚本语言是一种用于自动化任务的高级编程语言,通常在解释器中运行而不需要编译。它们以其简洁的语法、易于编写和执行的特点而广受欢迎。脚本语言通常用于快速开发、任务自动化、系统管理、Web开发等领域。脚本语言的起源可以追溯到早期的Unix shell脚本,这些脚本是为了自动化简单的任务而设计的。最初的脚本语言如sh(Bourne Shell)允许用户编写脚本来执行文件操作、程序调用等任务。随着时间的推移,脚本语言逐渐发展并变得更加强大和灵活,能够处理更复杂的任务。

Python老吕的博客 2946

什么是脚本,脚本语言?

一、脚本 百科解释: 脚本(script)是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。 脚本通常可以由应用程序临时调用并执行。各类脚本目前被广泛地应用于网页设计中,因为脚本不仅可以减小网页的规模和提高网页浏览速度,而且可以丰富网页的表现,如动画、声音等。举个最常见的例子,当我们点击网页上的E-mail地址时能自动调用Outlook Express或Fox...

松鼠豪的坚果 7万+

脚本语言与非脚本语言

脚本语言(Script languages)是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言,脚本语言是编程语言的子集。 一个脚本通常是解释执行而非编译。脚本语言通常都有简单、易学、易用的特性,目的就是希望能让程序员快速完成程序的编写工作。 脚本语言不需要编译,一句句解释执行就可以,脚本语言是读一行执行一行,而无需关注下一行的语言,非脚本语言则是必须读取整个源程序内容、建立完执行环境后执行的语言。 非脚本语言比如java、C这些,如果代码有错误,

bj318318的博客 3618

HTML语言中常用的脚本语言有,脚本语言有哪些?

脚本语言又被称为扩建的语言,或者动态语言,是一种编程语言,用来控制软件应用程序,脚本通常以文本(如ASCII)保存,只在被调用时进行解释或编译。脚本语言是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言。 它的命名起源于一个脚本“screenplay”,每次运行都会使对话框逐字重复。早期的脚本语言经常被称为批量处理语言或工作控制语言。一个...

weixin_33110431的博客 1322

游戏脚本语言比较

Game脚本语言比较 这些东西是平时遇到的, 觉得有一定的价值, 所以记录下来, 以后遇到类似的问题可以查阅, 同时分享出来也能方便需要的人, 转载请注明来自RingOfTheC[ring.of.the.c@gmail.com]   发现一篇很好的比较常见脚本语言的文章, 翻译过来 :)  我很熟悉Lua, 也了解一些GameMonkey, 最近正在翻译Game

fruit的博客 2万+
上一篇: 什么是实用性测试?
下一篇: TestComplete的脚本语言
TIB
TIB
博客等级 码龄19年 2879粉丝 957原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值