问题列表 - 第44298页

如何告诉Gradle将testng.xml文件用于测试类和排序?

我试图让Gradle执行一些使用testng.xml文件定义的测试.我的testng.xml文件如下所示:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="mySuite" verbose="1">

  <listeners>
    <listener class-name="mypackage.MyListener" />
    <listener class-name="mypackage.TestOrderer" />
  </listeners>

  <test name="Tests">
    <classes>
      <class name="mytestpackage.CrazyTest1"/>
      <class name="mytestpackage.CrazyTest2"/>
      <class name="mytestpackage.CrazyTest3"/>
    </classes>
  </test>
</suite>
Run Code Online (Sandbox Code Playgroud)

那为什么我需要这个呢?我想确保我的测试以一种类似于此处列出的注释定义的方式进行组织.正如您可能猜到的,TestOrderer是一个IMethodInterceptor.

这就是问题,Gradle似乎正在接管我的testng.xml文件并抓取测试目录以找到它想要执行的测试.即使我禁用它,它也无法正确执行方法.这是我认为应该起作用的,但是,不,不.

test {
  useTestNG()
  options.suites("src/test/resources/crazyTestNG.xml") 
  # Adding 
  # scanForTestClasses = false 
  # causes zero tests to be executed, since the class names don't end in Test
}
Run Code Online (Sandbox Code Playgroud)

它似乎应该是一个明智的选择......分叉TestNG进程并让它运行,但我无法弄清楚如何告诉Gradle摆脱困境并执行我的测试.

testng gradle

12
推荐指数
3
解决办法
2万
查看次数

如何在mongodb中查询子对象

我是mongodb的新手,我正在尝试查询子对象.我有一系列国家,每个国家都有儿童城市.其中一个城市的Name属性为null,这会导致我的应用程序出错.如何查询State集合以查找名称== null的子城市?

mongodb

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

Objective-C @interface nameofclass(whatisinhere)

我在看NSArray.h

@interface NSMutableArray : NSArray
Run Code Online (Sandbox Code Playgroud)

我明白了 就在下面

@interface NSMutableArray (NSExtendedMutableArray)
Run Code Online (Sandbox Code Playgroud)

我不明白.我想使用这个类的扩展版本,但无法弄清楚如何.只是创建类NSExtendedMutableArray的对象似乎不起作用.

objective-c

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

使用事务从数据库中安全删除Django模型

在我的Django应用程序中,我具有从数据库中删除模型的单个实例的代码。两个并发请求都可能同时尝试删除同一模型。在这种情况下,我希望一个请求成功而另一个请求失败。我怎样才能做到这一点?

问题在于,当使用删除实例时delete(),Django不会返回有关命令是否成功的任何信息。此代码说明了问题:

b0 = Book.objects.get(id=1)
b1 = Book.objects.get(id=1)
b0.delete()
b1.delete()
Run Code Online (Sandbox Code Playgroud)

这两个delete()命令中只有一个实际上删除了该对象,但是我不知道哪个。不会引发任何异常,也不会返回任何指示命令成功的信息。在纯SQL中,该命令将返回删除的行数,如果该值为0,我知道删除失败。

我将PostgreSQL与默认的Read Commited隔离级别配合使用。我对此级别的理解是,每个命令(SELECT,DELETE等)都可以看到数据库的快照,但是下一个命令可以看到数据库的不同快照。我相信这意味着我不能做这样的事情:

# I believe this wont work
@commit_on_success
def view(request):
  try:
    book = Book.objects.get(id=1)
    # Possibility that the instance is deleted by the other request
    # before we get to the next delete()
    book.delete()
  except ObjectDoesntExist:
    # Already been deleted
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

database django postgresql transactions django-models

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

尝试在方向更改时加载新视图

我正在尝试在Xcode中创建一个应用程序,当手机从一个方向旋转到另一个方向时,该应用程序将切换到新视图.

这是"switchviewcontroller.h"文件代码:

#import <UIKit/UIKit.h>

@interface SwitchViewController : UIViewController {

}

-(IBAction)switchview:(id)sender;

@end
Run Code Online (Sandbox Code Playgroud)

这是"switchviewcontroller.m"文件代码:

#import "SwitchViewController.h"
#import "secondview.h"

@implementation SwitchViewController

-(IBAction)switchview:(id)sender {}

// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    // Return YES for supported orientations
    return YES;
}

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation
{
    if((fromInterfaceOrientation == UIInterfaceOrientationLandscapeLeft) ||
       (fromInterfaceOrientation == UIInterfaceOrientationLandscapeRight))
    {    
        [[secondview alloc] initWithNibName:@"secondview" bundle:[NSBundle mainBundle]];
    }

}
Run Code Online (Sandbox Code Playgroud)

它在iPhone模拟器中运行没有错误,但是,当我旋转它时不会加载新视图.对于初学者我认为我需要应用程序以横向模式打开,我不知道该怎么做,但它仍然无法工作,我认为它与代码的"initWithNibName"部分有关系因为我有.xib文件而不是.nib文件.任何人都可以帮我这两件事吗?谢谢.

objective-c ios

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

是否可以按日期"bin"值以获得ggplot2和R中每2周的总数?

我有一个数据帧,这是一个运行历史.一些变量包括日期(在POSIXct中)和该运行的值(此处=大小).我想生成各种图表,显示基于特定日期范围的大小列总数的行.理想情况下,我想使用相同的数据集,并从每周,2周,每月季度的总数进行更改.

这是一个示例数据集;

require(ggplot2)
set.seed(666)

seq(Sys.time()-(365*24*60*60), Sys.time(), by="day")

foo<-data.frame(Date=sample(seq(today-(365*24*60*60), today, by="day"),50, replace=FALSE),
        value=rnorm(50, mean=100, sd=25),
        type=sample(c("Red", "Blue", "Green"), 50, replace=TRUE))
Run Code Online (Sandbox Code Playgroud)

我可以创建这个显示个人价值的情节;

ggplot(data=foo, aes(x=Date, y=value, colour=type))+stat_summary(fun.y=sum, geom="line")
Run Code Online (Sandbox Code Playgroud)

或者我可以这样做以显示每月的金额;

ggplot(data=foo, aes(x=format(Date, "%m %y"), y=value, colour=type))+stat_summary(fun.y=sum, geom="line", aes(group=type))
Run Code Online (Sandbox Code Playgroud)

然而,每季度/ 2周总和会变得​​更复杂.理想情况下,我喜欢像stat_bin和stat_summary这样的东西,所以我可以指定一个binwidth(或者让ggplot根据范围进行最佳猜测)

我错过了一些明显的东西,或者这是不可能的?

r ggplot2

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

如何逗号分隔数组的值以进行显示

我已经搜索过PHP.net网站,最初想到了该list()功能的一些用途,但似乎没有完成目标:

我有一个未知数量的值存储在一个数组中

$array1 = array(1,2,3,4,5);

要么

$array1 = array(1,2,3);

我希望能够回显(或print_r)数组中包含的值来屏幕并仅用逗号和间距分隔.

例如:

'想法'是$array1要显示回声:

1,2,3

从上面的第二个例子.

php arrays split list

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

获取MongoDB中列的最高值

我一直在帮助获取mongo文档列的最高值.我可以对它进行排序并获得顶部/底部,但我很确定有更好的方法可以做到这一点.

我尝试了以下(和不同的组合):

transactions.find("id" => x).max({"sellprice" => 0})
Run Code Online (Sandbox Code Playgroud)

但它一直在抛出错误.除了排序和获得顶部/底部之外,有什么好的方法呢?

谢谢!

ruby mongodb mongodb-ruby

28
推荐指数
4
解决办法
3万
查看次数

PowerShell - 获取被调用应用程序的进程ID

我需要调用外部应用程序(即&'Notepad'),然后获取被调用应用程序的进程ID.

Get-Process Notepad =将返回所有记事本进程

我想做的事情如下:

$objApp = & 'c:\Notepad.exe'

WHILE (get-process -ID $objApp.id | select -property Responding) {
  Start-Sleep -s 10
  Echo "STILL WAITING"
}
Echo "Done!!"
Run Code Online (Sandbox Code Playgroud)

powershell process

23
推荐指数
2
解决办法
3万
查看次数

这两种开展活动的方式有什么区别?

首先,我对这一切都是全新的,我主要是在网上搜索如何做我想做的事情的方向,然后找出如何使用它.

所以我发现了如何开始活动的这两个版本,但我并不是真正理解其中的差异.这个比那个好吗?或者他们应该在不同的情况下使用?或者他们只是两种不同的方式来做同样的事情?

Button home = (Button) findViewById(R.id.to_home);
    home.setOnClickListener (new View.OnClickListener() {
        public void onClick(View view) {
            Intent i = new Intent(view.getContext(), Home.class);
                startActivityForResult (i, 0);

        }
    });
Run Code Online (Sandbox Code Playgroud)

或者这个

Button button = (Button)findViewById(R.id.b_cup);
    button.setOnClickListener (new View.OnClickListener() {
        public void onClick (View view) {
            Intent i = new Intent (Home.this, Cup.class);
            startActivity (i);

        }
    });
Run Code Online (Sandbox Code Playgroud)

android

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