使用Selenium webdriver进行Metamask自动化

gab*_*abe 6 automation selenium-webdriver blockchain metamask

我正在尝试使用需要Metamask扩展的Dapp来访问它.我通过chrome扩展添加了它.我知道如何在硒中添加扩展到chrome实例,但我不知道如何添加密码等.有人可以下载Metamask,并举例说明如何使用它通过selenium传递凭据吗?

 ChromeOptions options = new ChromeOptions();
 options.addArguments("--start-maximized");
 options.addExtensions(newFile("//Applications//chrome//MetaMask_v3.13.8.crx"));                
 driver = new ChromeDriver(options);
Run Code Online (Sandbox Code Playgroud)

小智 2

由于 Metamask 中钱包信息输入的过程相当复杂,因此让您的测试与 Metamask 扩展一起使用的最佳方法似乎是使用预配置的 Chrome 配置文件以定义的配置文件目录启动 Chrome:

# google-chrome -user-data-dir=/tmp/profile
Run Code Online (Sandbox Code Playgroud)

然后添加 Metamask 扩展并手动配置您的钱包,然后将相应的参数添加到 WebDriver 选项以使用此配置文件而不是创建一个空配置文件:

options.addArguments("user-data-dir=/tmp/profile");
Run Code Online (Sandbox Code Playgroud)

然后,在测试中,您必须重新输入 Metamask 的密码,然后一切就完成了。