LabVIEW测试和调试Web服务

简介: LabVIEW测试和调试Web服务

LabVIEW测试和调试Web服务


发布Web服务至终端前,需要测试HTTP方法VI是否按照预期与客户端进行通信。可直接从LabVIEW项目将Web服务置于调试服务器上,从而允许客户端发送请求至HTTP方法VI。调试服务器提供类似沙盒的环境。


1. (Windows) 右键单击我的电脑下的Web服务项目项,选择应用程序Web服务器»开始(调试服务器)。


(Real-Time) 右键单击RT终端下的Web服务项目项,选择开始(调试服务器)。


2. 打开Add.vi。注意运行按钮表示VI保留为执行,因为LabVIEW加载Web服务,使其可在调试服务器上与客户端通信。


3. 关闭Add.vi。


4. 按照下列步骤,获取客户端调用Add.vi使用的URL:


右键单击Add.vi并选择显示方法URL,显示HTTP方法URL对话框。


在可用服务器下拉菜单中,选择包含本地调试的项,然后单击复制URL按钮。如将服务发布至Web服务器,客户端必须通过其他端口与调试服务器上的Web服务进行通信。


关闭对话框。


如HTTP方法URL对话框打开,则Web服务不响应客户端的任何请求。


5. 将复制得到的URL在浏览器中打开,用实际值替换{值}变量。例如,http://127.0.0.1:8001/TutorialService/Add?b=2&a=3


6. 浏览URL。Add.vi接收到浏览器的HTTP请求,计算a和b的值,并返回响应,包括分配给Add.vi连线板每个显示控件的名称和输出值。本教程中的响应格式为JSON字符串,即接线端的默认输出格式。注意Add.vi有两个分配至连线板的显示控件:c和值。HTTP方法VI在响应中返回这两个值。


{"c":5,"value":"b=2&a=3"}


如发生不可预期事件,编辑Web服务文件前必须停止调试会话,因为LabVIEW保留文件为执行时无法对其进行编辑。


7. 在Subtract.vi上重复执行第4-5步。也可直接更改第5步中的URL,获得Subtract.vi唯一对应的URL映射:http://127.0.0.1:8001/TutorialService/AdditionalOperations/Subtract?b=2&a=3


8. 对Subtract.vi重复第6步。


9. (Windows)右键单击Web服务项目项并选择应用程序Web服务器»停止(调试服务器)。


(Real-Time)右键单击Web服务项目项并选择停止(调试服务器)。


配置客户端访问Web服务的方式


Web客户端通过URL与HTTP方法VI交换数据。后续教程中,将在Web浏览器中输入特定的URL,直接发送数据至HTTP方法VI连线板上的输入控件。


根据下列步骤,定义客户端可用于方法HTTP方法VI的URL:


1. 右键单击Web服务项目项并选择属性,显示Web服务属性对话框。


2. 在HTTP方法VI设置页,注意LabVIEW项目中Web资源文件夹的HTTP方法VI出现在Web服务VI表格中。同时,与Add.vi相比,注意在AdditionalOperations项目项中放置Subtract.vi的方式如何影响URL映射。


3. 在表格中选择Subtract.vi,注意页面底部URL映射选项卡的下列功能:


可在方法下拉菜单中改变HTTP请求的类型。设置Subtract.vi为默认值GET。


可选择禁用LabVIEW用于映射URL至VI的标准格式,自定义显示在服务名称后的URL部分。本教程使用标准URL映射并包含VI名称。


URL栏显示了LabVIEW为HTTP方法VI创建的基本URL。例如,LabVIEW为Subtract.vi创建的默认URL映射为/AdditionalOperations/Subtract。


在更为复杂的Web服务中,可能需要使用该页的其他选项卡配置VI返回输出数据至Web客户端的格式,以及访问权限等安全设置。


4. 单击确定,关闭Web服务属性对话框。


5. 保存Tutorial.lvproj。


发布Web服务至应用程序Web服务器


可将创建的Web服务发布至应用程序Web服务器。在该教程中,您将发布一个独立的Web服务。在更为复杂的应用中,可能需要通过LabVIEW独立应用程序或安装程序发布Web服务。应用程序Web服务器托管Web服务,并提供多种措施以保证网络数据交换的安全性,包括SSL加密。


(Windows)也可将Web服务发布至NI Web服务器。详细信息请参考教程:创建LabVIEW Web服务并将其发布到NI Web服务器。


按照下列步骤,将Web服务发布至运行在本地计算机上的应用程序Web服务器:


1. 右键单击Web服务项目项并选择应用程序Web服务器»发布。此时将显示部署进度对话框。


2. 如LabVIEW成功发布Web服务,单击关闭按钮。Web客户端现可与HTTP方法VI交换数据。


发布Web服务


为Web服务设置应用程序Web服务器


从客户端访问Web服务


按照下列步骤,通过URL从Web浏览器发送数据至发布的Web服务:


1. 右键单击Add.vi并选择显示方法URL,显示HTTP方法URL对话框。


2. 在可用服务器下拉菜单中,选择包含应用程序的项,然后单击复制URL按钮。该URL包含一个与调试服务器URL不同的端口号。LabVIEW使用该端口号与应用程序Web服务器上的Web服务进行通信。


3. 关闭对话框。


4. 复制URL至标准Web浏览器并用数值替换{value}变量,如http://127.0.0.1:8080/TutorialService/Add?b=2&a=3


如客户端与发布的Web服务不在同一个系统上,必须将127.0.0.1替换为托管主机的实际IP地址或主机名称。可在NI Web-based Configuration &Monitoring中自定义主机名称。


5. 浏览器返回JSON响应,包括分配给连线板每个显示控件的输出值。


通过URL发送数据至已部署的应用程序


监控Web服务


按照下列步骤,检查发布至应用程序Web服务器的Web服务状态:


1. 右键单击Web服务项目项并选择应用程序Web服务器»管理Web服务器。NI基于Web的配置和监控在Web浏览器中打开。


2. 单击窗口左侧的Web服务管理按钮。


3. 在已部署的Web服务列表中选择TutorialService。如列表为空,单击刷新按钮。


4. 注意Web服务的状态为运行。使用页面底部的按钮暂停、恢复、重新启动和取消部署Web服务。


5. 在页面右侧,可看到两个HTTP方法VI的URL映射:Add、AdditionalOperations/Subtract,分别对应于相关的HTTP方法。

相关文章
|
23天前
|
前端开发 机器人 测试技术
【RF案例】Web自动化测试弹窗处理
在进行Web自动化测试时,常会遇到不同类型的弹窗,如ajax、iframe、新窗口及alert/Confirm等。这些弹窗可通过Selenium进行定位与处理。其中,ajax弹窗直接定位处理;iframe需先选中再操作;新窗口类似iframe处理;而alert/Confirm则需特殊方法应对。在Robot Framework中,需先定义并获取窗口后使用特定关键字处理。此外,还有部分div弹窗需在消失前快速定位。希望本文能帮助大家更好地处理各类弹窗。
23 6
【RF案例】Web自动化测试弹窗处理
|
1月前
|
测试技术 C# 图形学
掌握Unity调试与测试的终极指南:从内置调试工具到自动化测试框架,全方位保障游戏品质不踩坑,打造流畅游戏体验的必备技能大揭秘!
【9月更文挑战第1天】在开发游戏时,Unity 引擎让创意变为现实。但软件开发中难免遇到 Bug,若不解决,将严重影响用户体验。调试与测试成为确保游戏质量的最后一道防线。本文介绍如何利用 Unity 的调试工具高效排查问题,并通过 Profiler 分析性能瓶颈。此外,Unity Test Framework 支持自动化测试,提高开发效率。结合单元测试与集成测试,确保游戏逻辑正确无误。对于在线游戏,还需进行压力测试以验证服务器稳定性。总之,调试与测试贯穿游戏开发全流程,确保最终作品既好玩又稳定。
47 4
|
2月前
|
测试技术
基于LangChain手工测试用例转Web自动化测试生成工具
该方案探索了利用大模型自动生成Web自动化测试用例的方法,替代传统的手动编写或录制方式。通过清晰定义功能测试步骤,结合LangChain的Agent和工具包,实现了从功能测试到自动化测试的转换,极大提升了效率。不仅减少了人工干预,还提高了测试用例的可维护性和实用性。
47 4
|
2月前
|
Web App开发 测试技术 API
自动化测试之美:使用Selenium和Python进行Web应用测试
【8月更文挑战第31天】在软件开发的快节奏世界中,自动化测试如同一束明灯,照亮了质量保证之路。本文将引导你通过Selenium和Python的强大组合,探索如何构建高效的Web应用测试框架。我们不仅会讨论理论,还会深入代码,从一个简单的示例开始,逐步扩展至更复杂的场景。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的见解和实用的技巧。让我们一同揭开自动化测试的神秘面纱,体验它的魅力所在。
|
2月前
|
IDE Java 测试技术
揭秘Java高效编程:测试与调试实战策略,让你代码质量飞跃,职场竞争力飙升!
【8月更文挑战第30天】在软件开发中,测试与调试对确保代码质量至关重要。本文通过对比单元测试、集成测试、调试技巧及静态代码分析,探讨了多种实用的Java测试与调试策略。JUnit和Mockito分别用于单元测试与集成测试,有助于提前发现错误并提高代码可维护性;Eclipse和IntelliJ IDEA内置调试器则能快速定位问题;Checkstyle和PMD等工具则通过静态代码分析发现潜在问题。综合运用这些策略,可显著提升代码质量,为项目成功打下坚实基础。
48 2
|
2月前
|
人工智能 Java 测试技术
自动化测试之美:如何用Selenium提升Web应用的质量保证
【8月更文挑战第24天】 在软件开发的海洋里,自动化测试如同一艘救生艇,帮助开发团队保持代码质量的同时,还能确保他们不会淹没在功能的迭代和bug修复中。Selenium,作为一个用于Web应用程序测试的工具,它的强大之处在于模拟真实用户操作的能力。本文将通过浅显易懂的语言和实际代码示例,引导读者理解Selenium的魅力所在,以及如何有效利用它来提升Web应用的测试效率和覆盖率。
|
22天前
|
jenkins 测试技术 持续交付
自动化测试的高效之路:如何利用Python进行Web应用测试
【9月更文挑战第13天】在软件开发的快节奏中,自动化测试是确保质量和效率的关键。本文将引导你了解如何使用Python语言及其强大的测试框架来提升Web应用的测试效率。我们将一起探索编写简洁而强大的测试脚本的技巧,以及如何通过持续集成(CI)实现自动化测试流程。准备好让你的测试工作飞一般的感觉!
|
2月前
|
XML JavaScript 测试技术
Web自动化测试框架(基础篇)--HTML页面元素和DOM对象
本文为Web自动化测试入门指南,介绍了HTML页面元素和DOM对象的基础知识,以及如何使用Python中的Selenium WebDriver进行元素定位、操作和等待机制,旨在帮助初学者理解Web自动化测试中的关键概念和操作技巧。
40 1
|
2月前
|
测试技术 Java
揭秘Struts 2测试的秘密:如何打造无懈可击的Web应用?
【8月更文挑战第31天】在软件开发中,确保代码质量的关键在于全面测试。对于基于Struts 2框架的应用,结合单元测试与集成测试是一种有效的策略。单元测试聚焦于独立组件的功能验证,如Action类的执行逻辑;而集成测试则关注组件间的交互,确保框架各部分协同工作。使用JUnit进行单元测试,可通过简单示例验证Action类的返回值;利用Struts 2 Testing插件进行集成测试,则可模拟HTTP请求,确保Action方法正确处理请求并返回预期结果。这种结合测试的方法不仅提高了代码质量和可靠性,还保证了系统各部分按需协作。
12 0
|
2月前
|
测试技术 开发者
守护代码质量的利器:揭秘Vaadin单元测试的奥秘,助你打造无懈可击的Web应用
【8月更文挑战第31天】在软件开发中,单元测试是确保代码质量和稳定性的重要手段。对于使用Vaadin框架开发的Web应用,有效的单元测试尤为关键。Vaadin提供了完善的工具链支持,并鼓励测试驱动开发(TDD)。本文详细介绍了如何为Vaadin应用编写单元测试,并通过具体示例展示了测试环境搭建、依赖配置以及对简单`UserForm`组件的测试方法。通过JUnit和Mockito,我们验证了表单字段的变化及有效性,确保组件按预期工作,从而提升应用的整体健壮性和可靠性。这不仅有助于发现潜在问题,还能简化未来的维护工作。
34 0
下一篇
无影云桌面