小编nih*_*lon的帖子

JUnit测试失败但显示相同的预期和实际结果

所以,我甚至不知道从哪里开始.整个惨败都是在八个多小时前开始的,杰里在一个接一个的问题上走出了困境.现在,这个: Junit测试失败,传递结果 点击"点击查看差异"后,它会变得更好: 在此输入图像描述

我有:
- 无效的缓存并重新启动IntelliJ
- 尝试运行在哪里Double[] numSet = {23.0};然后将预期结果设置为numSet而不是"[23.0]".没有骰子.
- 有关添加增量的答案不起作用:即使预期结果正确,JUnit测试也会失败

我觉得值得注意的是,当从主类调用方法时,假设在第48行出现的错误没有显示出来,所以我不清楚它可能是什么.

任何帮助将不胜感激.

以下是要测试的方法的代码.差点忘了:

public List<Object> trimNumberSet(Double[] numSet) {
    List<Object> trimmedNumberSet = new ArrayList<>();

    for (int i = 0; i < numSet.length; i++) {
        if (numSet[i] != null) {
            trimmedNumberSet.add(numSet[i]);
        }
    }
    return trimmedNumberSet;
}
Run Code Online (Sandbox Code Playgroud)

java unit-testing intellij-idea junit4

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

为什么IntelliJ IDEA会为System.out.println提供"表达式语句不是赋值或调用"错误?

这是代码:

public class TryStuffOutHere
{
    public static void main(String[] args)
        {
            System.out.println("Set the customer's name: ");
        }

}
Run Code Online (Sandbox Code Playgroud)

当我输入它时,IntelliJ IDEA停止突出显示字符串"设置客户的名字:",就像它对其他字符串文字一样,并将红色波浪线放在单词之间并显示"表达式语句不是赋值或调用".但是,如果我将行更改为:

System.out.print("Set the customer's name: ");
Run Code Online (Sandbox Code Playgroud)

该字符串再次看起来像一个普通的字符串赋值(所有一种颜色,没有检查标记).

即使单独声明字符串并输出变量仍会产生问题.

我附上了三张图片来说明我在说什么.有没有人对正在发生的事情有任何想法? 显然,我还不允许发布图片.如果您需要/需要截图,请告诉我.我很乐意按你的方式送他们.

更新(2013年4月28日):好吧,我现在有足够的积分来添加截图.所以,他们在这里:

图片1
在此输入图像描述

图2
在此输入图像描述

图3
在此输入图像描述

图4
在此输入图像描述

我还发现,在使缓存失效并重新启动IDE之后10-12秒的延迟是因为IDE仍在"更新索引".在它之后,问题会立即弹出......有时候.更复杂的是,使缓存无效并重新启动已经工作了两次,直到我退出并再次打开IDE,此时它重新出现.

java string intellij-idea

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

我可以将IntelliJ设置为自动缩进代码体吗?

问题1:IntelliJ可以设置为在创建新行时自动缩进代码体吗?

这是我的意思的一个例子:

我有这个方法:

    public static void main(String[] args)
        {
            System.out.println("Hi there.");
        }
Run Code Online (Sandbox Code Playgroud)

在键入表达式后按下返回键,我得到:

    public static void main(String[] args)
        {
            System.out.println("Hi there.");
        // the new line aligns itself with the braces.
        }
Run Code Online (Sandbox Code Playgroud)

我希望它能做到这一点:

    public static void main(String[] args)
        {
            System.out.println("Hi there.");
            // the new line aligns itself with the preceding line
        }
Run Code Online (Sandbox Code Playgroud)

我无法在"设置"下的任何位置找到可以使其成为默认行为的选项.它存在吗?我错过了它还是我在找一只独角兽?

问题2:是否有选项可以默认缩进代码体?如果是这样,它在哪里可以找到?

例:

使用"重新格式化代码..."命令后,我得到:

    public static void main(String[] args)
        {
        System.out.println("Hi there.");
        // the code body is realigned with the braces
        }
Run Code Online (Sandbox Code Playgroud)

是否可以设置IntelliJ来执行此操作,如果可以,我在哪里可以找到该选项?:

    public static void main(String[] args)
        { …
Run Code Online (Sandbox Code Playgroud)

java ide indentation intellij-idea

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

将文件路径传递给使用 cygstart 打开的命令时转义空格

问题

运行以下命令时:

cygstart bash "/home/FirstName LastName/bin/script.sh"
Run Code Online (Sandbox Code Playgroud)

传递给的文件路径bash在空间处被切断,所以我收到以下错误:

/usr/bin/bash: /home/FirstName: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我试过的:

1.

cygstart bash "/home/FirstName LastName/bin/script.sh"
Run Code Online (Sandbox Code Playgroud)

2.

FILE_PATH="/home/FirstName LastName/bin/script.sh"
cygstart bash "$FILE_PATH"
Run Code Online (Sandbox Code Playgroud)

3.

FILE_PATH="/home/FirstName LastName/bin/script.sh"
cygstart bash "${FILE_PATH}"
Run Code Online (Sandbox Code Playgroud)

4.

FILE_PATH="/home/FirstName LastName/bin/script.sh"
cygstart bash ${FILE_PATH}
Run Code Online (Sandbox Code Playgroud)

5.

FILE_PATH="/home/FirstName LastName/bin/script.sh"
MY_COMM=$(cygstart bash "$FILE_PATH")
eval $MY_COMM
Run Code Online (Sandbox Code Playgroud)

连同其他六个我现在想不起来的变体,包括以上所有带有反斜杠的变体以逃避空间。错误总是一样的。

我错过了什么,或者甚至有办法解决这个问题?

更新:我cygstart在这种情况下使用的原因是利用它的--action=runas选项。我正在调用的脚本重命名一个文件,但它必须以管理员权限运行才能这样做。这个想法是我可以只调用脚本,然后输入适当的凭据。

cygwin

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

标签 统计

intellij-idea ×3

java ×3

cygwin ×1

ide ×1

indentation ×1

junit4 ×1

string ×1

unit-testing ×1