小编Rag*_*son的帖子

javac:执行Maven命令时,Mac上的目标版本无效:1.8

我正在尝试在Mac上运行自动化测试.我安装了Maven和java,jdk如下:

java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)
Run Code Online (Sandbox Code Playgroud)

和Maven:

Apache Maven 3.2.5 (12a6b3acb947671f09b81f49094c53f426d8cea1; 2014-12-14T18:29:23+01:00)
Maven home: /usr/local/Cellar/maven/3.2.5/libexec
Java version: 1.6.0_65, vendor: Apple Inc.
Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Default locale: en_US, platform encoding: MacRoman
OS name: "mac os x", version: "10.9.5", arch: "x86_64", family: "mac"
Run Code Online (Sandbox Code Playgroud)

当我执行Maven命令时,我收到了这个错误:

[ERROR] Failure executing javac, but could not parse the error:
[ERROR] javac: invalid target release: 1.8
[ERROR] Usage: javac <options> <source files>
[ERROR] use -help …
Run Code Online (Sandbox Code Playgroud)

java macos compilation javac maven

9
推荐指数
1
解决办法
2万
查看次数

使用VirtualBox进行备份和恢复

VirtualBox的新手在这里.我使用此命令行创建了VM的快照:

VBoxManage snapshot VMName take BackupName
Run Code Online (Sandbox Code Playgroud)

然后我用它来检查:

VBoxManage showvminfo VMName
Run Code Online (Sandbox Code Playgroud)

我看到创建了一个名为BackupName的快照.我没有找到"实际"快照BackupName,我在SnapShots文件夹中找到了一个文件filename.sav.

我的目的是创建此VM的快照,将其复制到另一台主机并在那里恢复.由于我找不到"快照"BackupName,所以我将sav文件复制到新主机并使用了以下命令:

VBoxManage adoptsate filename.sav
Run Code Online (Sandbox Code Playgroud)

但它没有用.任何人都可以帮我如何复制"快照"并在新主机中恢复它.非常感谢

virtualbox restore snapshot virtual-machine

8
推荐指数
1
解决办法
8230
查看次数

如何使用Junit按顺序运行测试方法

我正在使用JUnit和Selenium Webdriver.我想按照我在代码中编写测试方法的顺序运行我的测试方法,如下所示:

@Test
public void registerUserTest(){
    // code
}

@Test
public void welcomeNewUserTest(){
    // code
}

@Test
public void questionaireNewUserTest(){
    // code
}
Run Code Online (Sandbox Code Playgroud)

但它不起作用,它总是按此顺序执行我的测试方法:

welcomeNewUserTest()
registerUserTest()
questionaireNewUserTest()
Run Code Online (Sandbox Code Playgroud)

如果我用后缀Test命名我的方法,那么我在某处读了一个答案,然后JUnit将按顺序执行它们,就像我在代码中命令它们一样.显然,这不起作用.

有帮助吗?谢谢

java junit automated-tests selenium-webdriver

8
推荐指数
1
解决办法
1940
查看次数

无法使用Appium移动Android SeekBar

我有一个这样的自定义Android搜索栏,以及它可以移动到的位置.它从中间开始:

在此输入图像描述

我想首先移动滑块,然后检查它是否已保存.我有一个使用TouchAction的方法:

public void moveSeekBar(){
    WebElement seekBar = appiumDriver.findElementById("com.feverapp:id/SymptomTrackingActivity_var");
    //Get start point of seekbar.
    int startX = seekBar.getLocation().getX();
    System.out.println(startX);
    //Get end point of seekbar.
    int endX = seekBar.getSize().getWidth();
    System.out.println(endX);
    //Get vertical location of seekbar.
    int yAxis = seekBar.getLocation().getY();
    //Set slidebar move to position.
    // this number is calculated based on (offset + 3/4width)
    int moveToXDirectionAt = 786;
    System.out.println("Moving seek bar at " + moveToXDirectionAt+" In X direction.");
    //Moving seekbar using TouchAction class.
    TouchAction act=new TouchAction(appiumDriver);
    act.press(startX,yAxis).moveTo(moveToXDirectionAt,yAxis).release().perform();
}
Run Code Online (Sandbox Code Playgroud)

我注意到的一点:

  • seekbar根本不动
  • getX和getY总是相同的值,即使我在调用此方法之前尝试将滑块设置回左侧 …

android automated-tests seekbar appium android-seekbar

7
推荐指数
1
解决办法
2148
查看次数

如何使用 Playwright 最大化弹出窗口(例如单击按钮打开弹出窗口)

我正在测试的软件有很多弹出窗口/模式窗口。主页loginPage以全屏模式打开。单击按钮后,将打开一个新的弹出(模式)窗口,例如。overviewPage

我想要实现的是更改此弹出窗口的视口,或者更好地最大化它,在本例中是overviewPage

这是我的代码:

const browser = await chromium.launch({
        args: ['--start-maximized'],
        headless : false, slowMo : 50});
const context = await browser.newContext({viewport : null});
const loginPage = await context.newPage();
await loginPage.goto(myURL.href);  //Login Page was opened in Maximized mode (Fullscreen)

// Next step is to click a button on Login Page, and a new page is opened.
await loginPage.click('#nextBtn');

console.log('Get page after a specific action (e.g. clicking a button');
const [overviewPage] = await Promise.all([
    context.waitForEvent('page')
]);
await overviewPage.waitForLoadState(); …
Run Code Online (Sandbox Code Playgroud)

automation popupwindow node.js typescript playwright

7
推荐指数
1
解决办法
1万
查看次数

如何通过单击HyperLink打开文件

我有这张桌子

在此输入图像描述

我想点击链接,文件(无论文件)将在新的弹出窗口中打开.

这是我的代码:

<asp:Repeater ID="dokumente" runat="server">
    <ItemTemplate>
        <tr>
            <td><asp:HyperLink ID="HyperLink4" runat="server" Text='<%# Eval("DokuTyp") %>' NavigateUrl='file://<%# Eval("File") %>'></asp:HyperLink></td>
            <td><%# Eval("Description")%></td>
            <td><%# Eval("Date") %></td>
            <td><%# Eval("File") %></td>
        </tr>
    </ItemTemplate>
</asp:Repeater>
Run Code Online (Sandbox Code Playgroud)

但它不适用于NavigateUrl.任何人都可以帮助我或任何想法如何做到这一点.谢谢

c# asp.net web-applications hyperlink visual-studio-2010

5
推荐指数
1
解决办法
2万
查看次数

单击以确认使用 Selenium WebDriver 的模态对话框

我有一个像这样的模态对话框: 在此处输入图片说明

我想单击“确定”按钮来保存此文本。所以我使用 switchTo 切换到这个对话框:

webDriver.switchTo().frame(0);
Run Code Online (Sandbox Code Playgroud)

我假设因为只有一个 Dialog,所以我使用了 frameID = 0。但我不知道如何从这里继续或如何单击 OK 按钮,因为我没有得到任何 HTML 信息。

任何帮助都非常感谢

java selenium webdriver modal-dialog selenium-webdriver

5
推荐指数
2
解决办法
8788
查看次数

Appium 驱动程序以编程方式获取应用程序包名称

我在用:

appiumDriver.findElement(By.id("com.XXX.keyword:id/nextButton"));
Run Code Online (Sandbox Code Playgroud)

但有时我们有调试版本,所以我们有类似“com.XXX.keyword.debug”的东西。所以我想在测试运行之前获取包名称,以便测试可以独立于此。

我试过

driver.currentActivity()
Run Code Online (Sandbox Code Playgroud)

但它只返回类似“.MainActivity”的内容

Appium 有没有办法获取包名?

多谢。

java android automated-tests appium

5
推荐指数
1
解决办法
4248
查看次数

如何使用Selenium关闭Chrome的"下载"对话框(单击"取消")

我可以使用WebDriver在Chrome中自动执行下载操作.以下是我设置Chrome驱动程序的代码:

ChromeOptions options = new ChromeOptions();
HashMap<String, Object> chromePrefs = new HashMap<>();
chromePrefs.put("download.default_directory", "/pathToDownloadFolder");
chromePrefs.put("download.prompt_for_download", false);
chromePrefs.put("download.directory_upgrade", true);
chromePrefs.put("safebrowsing.enabled", true);
options.setExperimentalOption("prefs", chromePrefs);
// create chrome driver
webDriver = new ChromeDriver(options);
Run Code Online (Sandbox Code Playgroud)

该文件将保存在pathToDownloadFolder中.

但我不想实际保存文件.我的目的是自动化用户的操作:点击下载 - >显示的下载对话框 - >用户点击取消.

哪个选项可以镜像下载对话框的取消按钮?

编辑

我想下载,但无法保存,因为我需要点击才能下载按钮来激活另一个按钮,点击,所以节省了文件是没有必要的,这就是为什么我要解雇(或自动操作用户单击取消当下载对话框apears )

我查看了Chrome选项,但目前的实施似乎不太可能.有没有解决方法?

java automated-tests google-chrome selenium-webdriver

5
推荐指数
1
解决办法
2380
查看次数

通过 Selenium 在 Microsoft Edge 中下载文件

我必须自动化一个案例,在这个案例中我必须使用 Selenium WebDriver 和跨浏览器下载文件。

我已经为 Chrome(通过ChromeOptions)、FF(通过FirefoxProfile)和 IE11 这样做了。例如,在 Firefox 中,我使用Firefox Profile抑制下载提示,如下所示:

profile.setPreference("browser.download.dir", "C:\\DownloadCleanup");
profile.setPreference("browser.download.folderList", 2);
profile.setPreference("browser.download.manager.showWhenStarting", false);      
profile.setPreference("browser.helperApps.alwaysAsk.force", false);   
profile.setPreference("browser.helperApps.neverAsk.saveToDisk", mimeTypes);
Run Code Online (Sandbox Code Playgroud)

对于 IE11,我使用Robotclass 按下组合键Alt + S,如下所示:

Robot robot = new Robot();            
// simulate the "Alt + S" to save file on IE11 when Download Prompt appears
robot.keyPress(KeyEvent.VK_ALT);
robot.keyPress(KeyEvent.VK_S);
robot.keyRelease(KeyEvent.VK_ALT);
robot.keyRelease(KeyEvent.VK_S);
Run Code Online (Sandbox Code Playgroud)

一切正常。现在我想在 Edge 中做到这一点。但是我找不到 Edge 的组合键(如 IE11)或设置(如 Chrome 和 FF)。

我在 Edge 中手动尝试,但出现下载提示时似乎没有保存文件的快捷方式。因此,我的解决方法是转到 Edge -> 设置 -> 高级设置并停用此下载提示。

有谁知道如何通过 Selenium 做到这一点,比如在 …

java automated-tests webdriver selenium-webdriver microsoft-edge

5
推荐指数
1
解决办法
2290
查看次数