小编kas*_*ere的帖子

如何模拟单元测试的父类

所以我有三个类:A,B,C.我需要为类编写单元测试A.

  class A extends B{
   //fields go here ...

   public A(String string, ...){
      super.(string,...);
   }
   //other methods here ...
 }

 class B{
   C stuff;
   //other stuff
 }
Run Code Online (Sandbox Code Playgroud)

所以C是一个重要的资源(如JDBC或ssh Session).当然,我在嘲笑C.我怎么模仿B.Imagine B有许多扩展它的子类.

我的主要问题A是打电话super.(...).我不想将方法注入到A测试中.对我来说这是糟糕的设计.任何想法如何嘲笑父母?

例如,我不能这样做class MockB extends B{...},然后尝试MockB obj = new A();这不会因为这两个工作MockBA将是儿童B.

java unit-testing mocking

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

如何使用webapp2解析path-parameter

我从一个Java REST背景来PythonGoogle App Engine's.我需要一些使用webapp2路径参数的帮助.下面是Java如何读取请求的示例.有人请将代码翻译成python如何阅读它webapp2

// URL: my_dogs/user_id/{user_id}/dog_name/{a_name}/breed/{breed}/{weight}

@Path("my_dogs/user_id/{user_id}/dog_name/{a_name}/breed/{breed}/{weight}")
public Response getMyDog(
    @PathParam("user_id") Integer id,
    @PathParam("a_name") String name,
    @PathParam("breed") String breed,
    @PathParam("weight") String weight
){

//the variables are: id, name, breed, weight.
///use them somehow

}
Run Code Online (Sandbox Code Playgroud)

我已经走了过来例子在谷歌(https://developers.google.com/appengine/docs/python/gettingstartedpython27/usingwebapp).但我不知道如何扩展简单

app = webapp2.WSGIApplication([('/', MainPage),
                           ('/sign', Guestbook)],
                          debug=True)
Run Code Online (Sandbox Code Playgroud)

google-app-engine python-2.7 webapp2 path-parameter

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

计算机关闭后,本地GAE数据存储区不会保留数据

在我的本地机器(即http://localhost:8080/)上,我已将数据输入我的GAE数据存储区中,用于某个实体调用Article.关闭我的电脑,然后第二天重新启动,我发现数据存储空了:没有实体.有没有办法在将来阻止这种情况?

如何在本地数据存储中复制数据?此外,我是否可以稍后将所述数据上传到localhost和production?

我的模特是ndb.

我正在使用Max OS X和Python 2.7,如果这些重要的话.

google-app-engine python-2.7 google-cloud-datastore

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

Junit测试已启动的正确线程数

所以我有一个启动五个线程的方法.我想编写一个单元测试来检查五个线程是否已经启动.我怎么做?示例代码非常感谢.

java multithreading unit-testing

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

没有为jdbc找到合适的驱动程序:mysql:// localhost /

我试图将我的代码从linux移植到mac OSX LION.以下方法适用于linux就好了.

Connection getConnection() throws SQLException{
    String url = "jdbc:mysql://localhost/";
    return DriverManager.getConnection(url, "root", "mypassword");
}
Run Code Online (Sandbox Code Playgroud)

但它不能在我的Mac上工作.我正在使用XAMMP,因此我的数据库的路径是/Applications/XAMPP/xamppfiles/bin/mysql.我得到的错误是读

Exception in thread "main" java.sql.SQLException: 
    No suitable driver found for jdbc:mysql://localhost/
at java.sql.DriverManager.getConnection(DriverManager.java:602)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
Run Code Online (Sandbox Code Playgroud)

基于以下帖子的反馈更新:

我下载了jar并将其添加到项目的构建路径中.当我尝试添加Class.forName("com.mysql.jdbc.Driver")我得到编译错误,所以我评论它.然后我运行该程序以获得以下错误:

Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at …
Run Code Online (Sandbox Code Playgroud)

java mysql jdbc osx-lion

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

Python 2.7:检查子列表是否包含项目

我有一个Python列表.如下图所示,我想检查其中一个子列表是否包含一个项目.以下尝试失败.有没有人知道一个简单的方法 - 没有我写我自己的循环?

>>> a = [[1,2],[3,4],[5,6],7,8,9]
>>> 2 in a
Run Code Online (Sandbox Code Playgroud)

我希望,True但回报是False

python list

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

如何在jinja2中获取网站的基本网址?

PHP具有$_SERVER['DOCUMENT_ROOT']对网站基本URL的引用:例如http://localhost:8080/.我需要做同样的事情jinja2.我在app引擎上使用python 2.7.

如何在jinja2中获取网站的基本网址?

google-app-engine jinja2 python-2.7

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

Python 2.7:在列表中查找忽略大小写的项目

我有一个字符串列表

["oranges", "POTATOES", "Pencils", "PAper"]
Run Code Online (Sandbox Code Playgroud)

我想查找列表是否包含paper,忽略大小写; 以便打印以下代码段found.我的列表只包含仅由英文字母组成的简单字符串 - 大写和小写.

item = 'paper'
stuff = ["oranges", "POTATOES", "Pencils", "PAper"]
if item in stuff:
    print "found"
else:
   print "Not found"

#How do I get the method to print "found"?
Run Code Online (Sandbox Code Playgroud)

澄清:

我的列表实际上是一个列表列表,我的逻辑使用以下构造:

if not any ( item in x for x in stuff):
   print "Not found"
else:
   print "found"
Run Code Online (Sandbox Code Playgroud)

python python-2.7

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

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链接

我使用的是 Mac OS X Lion 版本 10.8。我通过 XAMPP 安装了 MySQL。我已将 mysql 和 jdbc 驱动程序 (5.1.22) 添加到我的类路径中。以下简单代码不起作用:

package learning.database;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

public class Simple {

Connection getConnection() throws SQLException{
String url = "jdbc:mysql://localhost/";
return DriverManager.getConnection(url, "username", "password");
}

void createDatabase(String database, Connection conn) throws SQLException{
Statement stmt = null;
try {
stmt = conn.createStatement();
stmt.executeUpdate("drop database if exists "+database);
stmt.executeUpdate("create database "+database);
}finally {
if(null != stmt)
stmt.close();
}
}

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

java mysql xampp jdbc

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

JPA合并导致外国实体的重复输入

问题:

有没有人知道如何合并而不EntityManager试图重新插入外国实体?

场景:

只是为了设置一个与我的案例非常匹配的场景:我有两个实体

@Entity
@Table(name = "login", catalog = "friends", uniqueConstraints =
@UniqueConstraint(columnNames = "username"))
public class Login implements java.io.Serializable{

   private static final long serialVersionUID = 1L;
   @Id
   @GeneratedValue(strategy = IDENTITY)
   @Column(name = "id", unique = true, nullable = false)
   private Integer id;
   @Column(name = "username", unique = true, nullable = false, length = 50)
   private String username;
   @Column(name = "password", nullable = false, length = 250)
   private String password;
}

@Entity
@Table(name = "friendshiptype", catalog = …
Run Code Online (Sandbox Code Playgroud)

java merge jpa

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

通过继承和接口实现 Python 多态

我正在使用 Python 2.7(谷歌应用引擎)

学习了Python,我已经弄清楚语言是如何使用继承来实现多态的。

INHERITANCE基于多态性在PYTHON

class pet:
  number_of_legs = None
  age = None

  def sleep(self):
    print "zzz"

  def count_legs(self):
    print "I have %s legs." % self.number_of_legs
    return self.number_of_legs


class dog(pet):
  def bark(self):
    print "woof"

doug = dog()

doug.number_of_legs = 5;

print "Doug has %s legs." % doug.count_legs()
doug.bark()
Run Code Online (Sandbox Code Playgroud)

我的问题是:Python 是否具有松散耦合的多态性,即使用interface而不是inheritance. 例如,在 Java 中,没有祖先关系的类可以实现相同的接口。见HouseDogPetRock下面的例子。

INTERFACE基于多态性在JAVA

class Animal{
   int legs;
   double weight;

   public int getLegs(){return this.legs;} …
Run Code Online (Sandbox Code Playgroud)

python java polymorphism interface

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