小编Tal*_*gel的帖子

将JSON与数组进行比较

我正在尝试比较2个JSON文件,它们具有重复值的数组。

我的第一个JSON对象具有如下数组:

"categories": [
            "May",
            "Apr",
            "Mar"
          ]
Run Code Online (Sandbox Code Playgroud)

我的第二个JSON对象具有如下数组:

"categories": [
            "May",
            "May",
            "Apr",
            "Apr",
            "Mar",
            "Mar"
          ]
Run Code Online (Sandbox Code Playgroud)

我正在使用平面映射比较JSON,可以在此链接中找到该映射,使用guava比较JSON

这是我的代码的一部分:

 private String smartJSONsCompare(JSONObject leftJson, JSONObject rightJson) {

    String result = "</br>";
    Gson gson = new Gson();
    Type type = new TypeToken<Map<String, Object>>(){}.getType();
    Map<String, Object> leftMap = gson.fromJson(leftJson.toString(), type);
    Map<String, Object> rightMap = gson.fromJson(rightJson.toString(), type);
    Map<String, Object> leftFlatMap = FlatMapUtil.flatten(leftMap);
    Map<String, Object> rightFlatMap = FlatMapUtil.flatten(rightMap);
    MapDifference<String, Object> difference = Maps.difference(leftFlatMap, rightFlatMap);
    StringBuilder SB = new StringBuilder("</br>");
    SB.append("Entries only on LEFT: …
Run Code Online (Sandbox Code Playgroud)

java json

4
推荐指数
1
解决办法
676
查看次数

通过 Linux 以无头模式运行 Selenium 会导致错误

我在一个网站上运行了大量测试。当我在 Windows 上本地运行测试时,它们都 100% 通过。该测试是在 Google Chrome 上设计和运行的。

现在,我们开始通过 Jenkins 作业在无头模式下在 Linux 上运行测试。现在有些测试在 0% 的情况下失败,或者仅在 20% 甚至 10% 的情况下通过。在我的代码中,我通过 ID、xpath 或 css 查找元素,然后简单地单击它们。我使用 WebDriverWait 对象进行等待 - 既等待元素出现又可单击。

我的代码示例:

    WebDriverWait wait = new WebDriverWait(browser, secondsToWait);
    wait.until(ExpectedConditions.presenceOfElementLocated(By.id(elementID)));           
    lastFoundElement = wait.until(ExpectedConditions.elementToBeClickable(By.id(elementID)));
    clickLastFoundElement();
Run Code Online (Sandbox Code Playgroud)

在我的报告中,我主要看到未找到元素,并且我通过了等待对象中设置的超时。

如何让无头测试更加稳定?

为什么无头状态会造成如此多的问题?

java selenium headless-browser jenkins google-chrome-headless

4
推荐指数
1
解决办法
3308
查看次数

Selenium ChromeOptions 的含义

我在无头模式下使用 Selenium 时遇到了很多问题。因此,我将这些选项添加到我的 ChromeOptions 对象中:

  1. --proxy-server='direct://'
  2. --代理绕过列表=*
  3. --禁用-dev-shm-用法
  4. --禁用浏览器端导航

我看到它帮助 Selenium 更快地工作并在无头模式下提供更好的结果,但我不明白每个选项的真正含义。每个选项的作用是什么?

selenium google-chrome-headless

4
推荐指数
1
解决办法
7359
查看次数

如何在单个定位器中按属性和文本查找元素?

如何使用 Playwright 使用单个定位器短语查找元素?

我的元素是:

<div class="DClass">Hello</div>
Run Code Online (Sandbox Code Playgroud)

我希望通过其类和文本找到该元素:

myElement = self.page.locator('text="Hello",[class="DClass"]')
Run Code Online (Sandbox Code Playgroud)

为什么它不起作用?

python playwright playwright-python

4
推荐指数
1
解决办法
3440
查看次数

Flake8 - 二元运算符之前的换行符 - 如何修复它?

我不断得到:

W503 line break before binary operator
Run Code Online (Sandbox Code Playgroud)

请帮助我修复我的代码,因为我无法弄清楚这里出了什么问题:

def check_actionable(self, user_name, op, changes_table):
        return any(user_name in row.inner_text() and row.query_selector(
            self.OPS[op]) is not
                   None and row.query_selector(self.DISABLED) is not None for
                   row in changes_table)
Run Code Online (Sandbox Code Playgroud)

python flake8

4
推荐指数
2
解决办法
7161
查看次数

如何使用 C# 和 Unity 知道设备是否已插入

我正在构建一个游戏,想知道:如何在 Unity 中使用 C# 纯代码知道 Android 设备是否已插入(即电池正在充电)?

c# unity-game-engine

3
推荐指数
1
解决办法
1471
查看次数

RegEx fo替换字符串中的数字

这是我的字符串:

" "hello": 0, "zulu": 1,234, "Bravo": 987.456 "
Run Code Online (Sandbox Code Playgroud)

我想使用正则表达式替换字符串中的任何数字(整数或实数,是否使用千位分隔符),然后获取以下新字符串:

 "hello": "0", "zulu": "1,234", "Bravo": "987.456" "
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

java regex string

3
推荐指数
1
解决办法
50
查看次数

如何在Selenium中按类查找嵌套元素

我在另一个 div 内的 div 中有一个 div。大多数外部div类是“Big Div”,里面有一个类为“Medium Div”的div,最内部的div类是“Small Div”。

当我按 F12 键并将鼠标悬停在元素上时,我能够看到 div 的类,但是我无法使用 Selenium 找到它们。

我究竟做错了什么?

WebElement big = browser.findElement(By.cssSelector("//div[contains(@class,'Big')]"));
WebElement medium = big.findElement(By.cssSelector("//div[contains(@class,'Medium')"));
WebElement small = medium.findElement(By.cssSelector("//div[contains(@class,'Small'"));
Run Code Online (Sandbox Code Playgroud)

注意:我的类包含空格,Selenium 找不到任何 div 并且我得到异常:“没有这样的元素”。

java selenium xpath selenium-webdriver

3
推荐指数
1
解决办法
7404
查看次数

如何期望计数大于或小于?

使用PlaywrightPython,我如何期望计数大于或小于?

例如,此代码期望计数为 2。

如何实现计数 >= 2 (仅更大)

expect(self.page.locator('MyLocator')).to_have_count(2, timeout=20 * 1000)
Run Code Online (Sandbox Code Playgroud)

python playwright playwright-python

3
推荐指数
1
解决办法
1242
查看次数

如何使用 Playwright 和超时参数检查元素是否存在

我需要在我的网页中找到特定元素。该元素可能位于页面中,也可能不在页面中。

如果元素不可见,此代码会给我错误:

error_text = self.page.wait_for_selector(
            self.ERROR_MESSAGE, timeout=7000).inner_text()
Run Code Online (Sandbox Code Playgroud)

如何使用超时查找元素,并获得一个布尔值告诉我是否找到该元素?

python playwright playwright-python

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

如何将字符串拆分为列表并在一行Java中修剪

请看我的代码

 String Str = "E_1000, E_1005,E_1010 , E_1015,E_1020,E_1025";
                List<String> splitStr = Arrays.asList(Str.split(","));
Run Code Online (Sandbox Code Playgroud)

我的列表(splitStr)的字符串带有空格。

有没有一种方法可以拆分字符串并修剪一行代码中的所有元素?

java string trim

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

ConcurrentHashMap - 添加具有相同Key的项目

我有一个CuncurrentHasMap:

private static ConcurrentHashMap<String, Object> testParameters =
new ConcurrentHashMap<String, Object>();
Run Code Online (Sandbox Code Playgroud)

我推动(有时)具有相同键的对象,这些对象是TreeMap类型的TreeMaps(字符串,MyPrivateClass).

如何更改此put方法,以便将具有相同键的对象放在一起而不被覆盖?

public static void put(String key, Object object) {

        getTestParameters().put(key, object);
}
Run Code Online (Sandbox Code Playgroud)

java concurrency

0
推荐指数
1
解决办法
175
查看次数

放大显示前后摄像头

我希望在自己的活动中显示前置或后置摄像头输入。另外,我希望用户控制两个摄像机的变焦。

我应该如何使用Camera对象调用,是不是已弃用?另外,如何使我的视图显示来自摄像机的实时数据?

java camera android

-1
推荐指数
1
解决办法
126
查看次数