菜鸟教程小白 发表于 2022-12-13 14:17:57

ios - 在进行 xcode ui 测试执行时从设备关闭 wifi


                                            <p><p>我在 xcode ui 测试中遇到问题。 </p>

<p>也就是说,在我的执行过程中,比在某些情况下</p>

<pre><code>i have to off my wifi
</code></pre>

<p>我知道我可以使用命令来做到这一点</p>

<pre><code>networksetup -setairportpower en0 on
</code></pre>

<p>我在osx中​​写了一个函数:</p>

<pre><code>func runTerminalCommand(args: String...) -&gt; Int32 {
let task = NSTask()
task.launchPath = &#34;/usr/bin/env&#34;
task.arguments = args
task.launch()
task.waitUntilExit()
return task.terminationStatus
</code></pre>

<p>}</p>

<p>如果我在 osx 中使用它,我可以关闭 wifi。 </p>

<p>但我不能在我的 ios 应用程序中使用它,或者不能在我的
xcode ui 测试。</p>

<p>在进行 xcode ui 测试时如何关闭我的 wifi?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>使用 <strong>Xcode 9</strong>,您现在可以在运行 UITest 时点击控制中心中的 wifi 按钮。 </p>

<p>这是一个小助手功能,可以打开控制中心,点击wifi按钮并再次关闭:</p>

<pre><code>func toggleWiFi() {
    let app = XCUIApplication()
    let springboard = XCUIApplication(bundleIdentifier: &#34;com.apple.springboard&#34;)

    // open control center
    let coord1 = app.coordinate(withNormalizedOffset: CGVector(dx: 0.5, dy: 0.99))
    let coord2 = app.coordinate(withNormalizedOffset: CGVector(dx: 0.5, dy: 0.1))
    coord1.press(forDuration: 0.1, thenDragTo: coord2)

    let wifiButton = springboard.switches[&#34;wifi-button&#34;]
    wifiButton.tap()

    // open your app back again
    springboard.otherElements[&#34;com.your.app.identifier&#34;].tap()
}
</code></pre>

<p>请记住,运行测试时您必须使用电缆连接设备;-)</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 在进行 xcode ui 测试执行时从设备关闭 wifi,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/39960490/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/39960490/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 在进行 xcode ui 测试执行时从设备关闭 wifi