Попробуйте следующий код:
import org.openqa.selenium.remote.DesiredCapabilities;
import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.concurrent.TimeUnit;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.AndroidElement;
File fs = new File("src"); //Assume your aap is inside src folder.
File appPath = new File(fs, "YourAppAPK.apk");
DesiredCapabilities caps = new DesiredCapabilities();
caps.setCapability("deviceName", "RealDeviceNameOrEmulatorName");
caps.setCapability("app",appPath.getAbsolutePath());
caps.setCapability("automationName","uiautomator2");
caps.setCapability("platformName", "android");
AndroidDriver<AndroidElement> driver = new AndroidDriver<AndroidElement>(new URL("http://127.0.0.1:4723/wd/hub"), caps);
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
// Test Actions Here
System.out.println("Android Driver Started: "+driver);
Это не отвечает на ваш вопрос напрямую, но есть удобный аккорд ctrl-D + E, который вызывает диалог отладки исключений. Ctrl + Alt + E сделает то же самое.
Я не знаю (так что это может быть чушь) вы можете настроить отладчик на прерывание только на необработанных CLR, кроме исключений, а затем создать делегат / событие обработчика для всех исключений во время кода инициализации и проглотите CLR (ОК, ОК, только в режиме отладки), а затем удалите делегат / событие в той точке кода, где вы хотите, чтобы VS начал прерывание исключений CLR.
Конечно, это можно сделать с помощью надстройки Visual Studio или макроса .
You can turn them on/off through Visual Studio's automation API (called DTE). Take a look at the Debugger3.ExceptionGroups API. For example:
' Turn off NullArgumentException.
Dim debugger As Debugger3 = DTE.Debugger
Dim exceptionGroup As ExceptionSettings = dbg.ExceptionGroups.Item("Common Language Runtime Exceptions")
exceptionGroup.SetBreakWhenThrown(False, "System.NullArgumentException")
So you could easily write a macro to turn specific exceptions on / off. To invoke the macro from your application you can launch "devenv /command".
Alternatively, you can use DTE from out-of proc and automate Visual Studio directly (no macros involved).
More info:
Вероятно, вы можете сделать это, создав макрос (как показано в примере Майкла Лехенбауэра ), а затем повторно сконфигурируйте точку останова для запуска макроса и продолжения выполнения. . Вы можете сделать то же самое в конце раздела кода, который вам нужен, чтобы снова отключить этот параметр или вручную отключить его между сеансами отладки.