Meta: -
其实我想设置GeoLocation在iOS使用设备Appium XCUITest的自动化.我尝试使用下面的代码,它在Android设备上工作正常,同时抛出异常iOS:
import org.openqa.selenium.html5.Location;
AppiumServiceBuilder builder = new AppiumServiceBuilder().usingAnyFreePort().withAppiumJS("path/to/appium/main.js");
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("automationName", "XCUITest");
IOSDriver driver= new IOSDriver(builder, capabilities);
//Here this code working fine with AndroidDriver
Location location = new Location(latitude, longitude, altitude);
driver.setLocation(location);
Run Code Online (Sandbox Code Playgroud)
例外:
org.openqa.selenium.WebDriverException:方法尚未实现(警告:服务器未提供任何堆栈跟踪信息)
当我尝试使用JavascriptExecutor时:
Map<String, String> args = new HashMap<String, String>();
args.put("address", "Address");
((JavascriptExecutor)webDriver).executeScript("mobile:setLocation", args);
Run Code Online (Sandbox Code Playgroud)
例外:
org.openqa.selenium.UnsupportedCommandException:未知的移动命令"setLocation".只有滚动,滑动,捏合,双击,两个手指点击,触摸和保持,点击,拖动来自动态,selectPickerWheelValue,才支持警报命令.(警告:服务器未提供任何堆栈跟踪信息)
当我尝试:
import org.openqa.selenium.remote.DriverCommand;
Map<String, String> args = new HashMap<String, …Run Code Online (Sandbox Code Playgroud) 从 Chrome 81 版本开始,从选择列表中提取选项并重新添加它们.append()似乎无法按预期工作。此行为在 Chrome 80 中有效,并且在其他浏览器中继续有效。我做错了什么,还是 Chrome 中的错误?
示例代码步骤
预期行为
列表有选项
实际行为
没有显示选项,尽管 DOM 检查器显示它们存在
片段
function test() {
var selectItem = $("#selectOne");
var items = selectItem.find('option');
selectItem.empty();
selectItem.append(items);
}Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="selectOne" multiple>
<option>A</option>
<option>B</option>
<option>C</option>
<option>D</option>
<option>E</option>
</select>
<br/>
<button onclick="test()">Go</button>Run Code Online (Sandbox Code Playgroud)
将以下行添加到我的 javascript 末尾确实“修复”了问题:
selectItem.get(0).innerHTML = selectItem.get(0).innerHTML;
Run Code Online (Sandbox Code Playgroud)
然而,这显然不是一个实际的修复。我只将它包含在这里,以防它有助于比我更了解这一点的人查明问题。
编辑 4 月 21 日:https : //bugs.chromium.org/p/chromium/issues/detail? id =1073172(感谢打开这个的人!)
我有两个天蓝色的 CLI 查询。
az acr repository list
Run Code Online (Sandbox Code Playgroud)
检索我的容器注册表中的存储库列表
az acr repository show-tags
Run Code Online (Sandbox Code Playgroud)
检索第一个查询返回的每个存储库的版本标记
这会导致初始调用来检索列表,然后对返回的每个存储库进行 1 次调用。有没有一种替代方案可以将所需的呼叫次数减少到一次?一次性检索存储库列表及其版本。
show-tags 命令需要一个强制性的存储库参数,我不知道任何其他命令会返回我需要的信息。