天道酬勤,学无止境

automation

命令行从 TFS“获取最新的”而不映射工作区等(Command line "get latest" from TFS without mapping workspaces and such)

问题 我假设这个: tf.exe get $/project /recursive ...需要这个奇怪的工作区映射,已知的 TFS 服务器等。 有什么办法可以做这件最简单的事情:使用这组凭据连接到该TFS 服务器,获取该项目的最新源代码并将其放在这里? 全部来自命令行。 回答1 首先,您想要一份不再受源代码控制(例如 SVN 导出)的受控文件的副本,还是仍然希望使用这些文件和 TFS? 选项 1:完全没有约束力 如果您只是想要一份最新文件的副本并且没有“绑定”到 TFS,您将不得不自己做一些工作。 撇开凭据(许多命令行方法的[/login:username,[password]]参数)。 使用TF命令获取文件列表: tf dir "$/YourSolution" /Recursive > files.txt 使用一些巧妙的批处理文件处理files.txt (或使用脚本语言): 读取以$/开头的行,这是目录,在目标中创建目录(删除前三个字符和最后一个字符,一个冒号)。 阅读下一行(直到空白或文件结尾),每行都代表在步骤 3 中发现的目录中的一个文件。假设您在变量%file%和目录%dir%拥有该文件,然后发出以下命令(对于该目录中的每个文件): tf view "$/%DIR%/%FILE%" "/output:Your-Target-Path/%DIR%/%FILE%"

2021-12-08 21:57:04    分类:技术分享    tfs   automation

如何从命令提示符执行 NUnit 测试用例(How to execute NUnit test cases from command prompt)

问题 如何使用 NUnit 从命令控制台执行测试用例? 我有一套基于 NUnit 框架用 C# 编写的 Selenium 测试。 我只需要通过从命令控制台运行来执行测试用例。 在 JUnit 中,我们可以从 cmd 运行测试用例作为 java junit.swingui.TestRunner test.Run 我们如何在 NUnit 中做到以上几点? 回答1 使用 nunit-console.exe 从命令行运行测试。 例如: nunit-console.exe /xml:results.xml path/to/test/assembly.dll 这将运行单元测试并将结果保存在 results.xml 文件中,您可以轻松使用该文件。 请参阅所有可用命令行开关的文档。 回答2 我想补充几句关于最新版本的 NUnit。 NUnit 3 中控制台应用程序的名称已更改为nunit3-console.exe 。有关所有可能选项的信息可以在官方文档中找到。 例如,运行程序集中的所有测试(结果默认保存到TestResult.xml文件中)。 nunit3-console.exe path/to/test/assembly.dll 回答3 我刚刚找到了另一个不错的解决方案: 将以下命令添加到“构建事件”/“构建后事件”,将在项目构建后自动运行 Nunit-Gui 中的测试。 我希望这很有用: "C

2021-12-08 17:55:57    分类:技术分享    c#   automation   nunit

重用 Internet Explorer COM 自动化对象(reusing Internet Explorer COM Automation Object)

问题 我正在使用 VBScript 宏来利用 InternetExplorer.Application COM 自动化对象,并且我正在努力重用此对象的现有实例。 从我读到的内容来看,我应该能够使用 vbscript 中的 GetObject() 方法来获取此对象的现有实例。 当我执行以下代码时,出现“对象创建失败 - 名字对象语法错误”。 我的问题真的是语法吗? 我的问题是我如何尝试使用这个对象? 或者我试图完成的事情无法完成? 代码: Dim IEObject as object Sub Main Set IEObject = GetObject( "InternetExplorer.Application" ) 'Set the window visable IEObject.Visible = True 'Navigate to www.google.com IEObject.Navigate( "www.google.com" ) End Sub 此外,我运行 CreateObject() 没有问题,它会打开一个新的 Internet Explorer 窗口并导航到我想要的位置,但我不想让宏打开 Internet Explorer 的多个实例。 回答1 尝试这个: Set IEObject = GetObject( ,"InternetExplorer

2021-12-08 15:27:13    分类:技术分享    internet-explorer   com   vbscript   automation

在不访问 /wp-admin/install.php 的情况下使用 bash shell 安装 WordPress?(Install WordPress using bash shell without visiting /wp-admin/install.php?)

问题 我编写了这个小 BASH 脚本,用于创建文件夹、解压缩 Wordpress 并为站点创建数据库。 最后一步实际上是安装 Wordpress,这通常涉及将浏览器指向 install.php 并在 GUI 中填写表单。 我想从 BASH shell 执行此操作,但无法弄清楚如何调用 wp_install() 并向其传递所需的参数: -admin_email -admin_password -weblog_title -用户名 (install.php 中的第 85 行) 这是一个类似的问题,但在 python 中 #!/bin/bash #ask for the site name echo "Site Name:" read name # make site directory under splogs mkdir /var/www/splogs/$name dirname="/var/www/splogs/$name" #import wordpress from dropbox cp -r ~/Dropbox/Web/Resources/Wordpress/Core $dirname cd $dirname #unwrap the double wrap mv Core/* ./ rm -r Core mv wp-config-sample.php wp-config

2021-12-08 12:50:44    分类:技术分享    wordpress   bash   installation   automation

Expect 脚本在 crontab 下不起作用(Expect script does not work under crontab)

问题 我有一个期望脚本,我需要在我的管理节点上每 3 分钟运行一次,以使用命令#portperfshow#为连接到 DCX Brocade SAN 交换机的每个端口收集 tx/rx 值 每次我尝试使用crontab每 3 分钟执行一次脚本时,该脚本不起作用! 我的期望脚本以#!/usr/bin/expect -f开头,我在 cron 下使用以下语法调用脚本: 3 * * * * /usr/bin/expect -f /root/portsperfDCX1/collect-all.exp sanswitchhostname 但是,当我执行脚本(不在 cron 下)时,它按预期工作: root# ./collect-all.exp sanswitchhostname 工作得很好。 请请有人帮忙! 谢谢。 脚本 collect-all.exp 是: #!/usr/bin/expect -f #Time and Date set day [timestamp -format %d%m%y] set time [timestamp -format %H%M] #logging set LogDir1 "/FPerf/PortsLogs" et timeout 5 set ipaddr [lrange $argv 0 0] set passw "XXXXXXX" if { $ipaddr ==

2021-12-07 15:22:56    分类:技术分享    automation   cron   crontab   expect

Selenium 无法打开第二页(Selenium can't open a second page)

问题 我正在使用 Selenium 打开网站的不同页面。 已尝试多次,但浏览器在初始 GET 调用后没有打开第二个网页。 Chrome 和 Safari 都试过了。 这是我的代码: driver = webdriver.Chrome() driver.get("https://www.justdial.com/Chennai/Hr-Consultancy-Services/nct-10258625/page-2") driver.set_page_load_timeout(30) driver.get("https://www.justdial.com/Chennai/Hr-Consultancy-Services/nct-10258625/page-3") 这是我第二次调用时遇到的错误: 来自网络日志的信息是错误 504,但我已经验证它在浏览器的另一个窗口上完成时可以完美运行,没有自动化 回答1 有关您的用例的更多信息将有助于构建更规范的答案。 但是,我能够使用最小化的代码块访问 justdial.com/Chennai/Hr-Consultancy-Services 的第 2 页,如下所示: 代码块: from selenium import webdriver options = webdriver.ChromeOptions() options.add_argument(

2021-12-06 22:07:47    分类:技术分享    python   selenium   google-chrome   selenium-webdriver   automation

如何在Matlab中使用多个文件(同一目录中的不同文件名)运行相同的代码?(How to run the same code with many files (different file name in same directory) in Matlab?)

问题 我有一千个 .dat 文件可以用同一个程序运行。 有没有更快的方法或脚本来自动运行它而不是一个一个地运行它们? .dat 文件具有不同的文件名。 该程序类似于: fid=fopen('**abd**.dat'); C=textscan(...); ... save('**abd**.txt',data); abd 是文件名。 我有数千个不同文件名的文件。 不断将这些文件名复制并粘贴到程序中并运行它,这有点烦人。 有人有更快的方法或代码吗? 回答1 您可以使用“dir”来获取文件列表,然后像这样循环处理它们。 fns = dir('*.dat'); for i = 1:length(fns) fid = fopen(fns(i).name); C = textscan(...); fclose(fid); save([fns(i).name,'.dat'],data); end 回答2 重新思考问题。 编写一个脚本来读取包含文件名和字符串的文本文件。 那么你有 2 个文件,而不是数千个。

2021-12-06 17:15:00    分类:技术分享    matlab   automation

如何在空手道 ui 自动化中上传视频文件? [复制](How to upload the video file in karate ui automation? [duplicate])

问题 这个问题在这里已经有了答案: 如何使用 Karate UI 自动化上传 PDF 文件? [重复] (1 个回答) 8 个月前关闭。 相关问题:如何使用 Karate UI Automation 上传 pdf 文件? 你能帮我创建空手道ui代码来上传这种结构的视频文件吗: #shadow-Root(Open) <div name="upload" class="upload vertical layout flex iron-selected" tabindex="0"> <div class="suggester"> <nuxeo-path-suggestion id="pathSuggesterUpload" always-float-label=""></nuxeo-path-suggestion> <span class="horizontal layout ">​</span> </div> <div id="dropzone" class="vertical layout flex"> <input hidden="" id="uploadFiles" type="file" multiple=""> <div class="vertical layout center center-justified flex"> <div class="dropzone

2021-12-05 19:45:19    分类:技术分享    user-interface   automation   karate

如何使用 Tcl 从 proc 生成 telnet?(how to spawn telnet from a proc with Tcl?)

问题 telnet 输出在哪里? thufir@dur:~/NetBeansProjects/spawnTelnet/telnet$ thufir@dur:~/NetBeansProjects/spawnTelnet/telnet$ tclsh main.tcl spawn telnet rainmaker.wunderground.com getting weather for nyc ^C thufir@dur:~/NetBeansProjects/spawnTelnet/telnet$ 主要的: lappend auto_path /home/thufir/NetBeansProjects/spawnTelnet/telnet/api package require weather 1.0 tutstack::connect "nyc" 代码: package provide weather 1.0 package require Tcl 8.5 package require Expect namespace eval ::tutstack { } proc ::tutstack::parse {city} { puts "getting weather for $city" expect -nocase "Press Return to continue:"

2021-12-05 19:30:26    分类:技术分享    automation   tcl   expect   telnet   proc

如何使用 python 在 selenium 中处理现有会话?(how to work on a exist session in selenium with python?)

问题 我想填写网页的某些字段,然后向它发送请求,但该网站有一个非常强大的登录页面,可以避免从机器人发送登录请求,因此我无法使用 selenium 登录,但登录后,我可以使用selenium,我可以发送请求,另一方面,我为一个应用程序编写了这个程序,所以我不能打开一个网络驱动程序然后在它上面工作我需要在存在的选项卡上工作 我想在一个人类打开的会话上编程工作 回答1 从我从您的问题中了解到的是,您想打开一个由人类启动的现有浏览器。 有多种方法可以实现这一点,正如 Devansh 在评论中所提到的,您可以使用会话 ID 来获取已经启动的浏览器并在其上执行您的测试脚本。 但是,还有另一种方法可以解决您在已打开的连接或登录用户上执行脚本的问题。 您可以在这种情况下使用浏览器的配置文件,浏览器中的用户配置文件就像计算机上的用户帐户。 您可以使用此问题的答案在脚本中创建和使用配置文件:Opening an existing tab/logged in user using Chrome Webdriver 现在您可以手动登录您正在努力登录的上述网站所需的帐户,然后启动脚本。

2021-12-05 18:57:37    分类:技术分享    python   selenium   selenium-webdriver   automation   webdriver