使用mock对conn()进行单元测试:
app.py
import mysql.connector
import os,urlparse
def conn():
if 'DATABASE_URL' in os.environ:
url=urlparse(os.environ['DATABASE_URL'])
g.db = mysql.connector.connect(user=url.username,password=url.password, host=url.hostname,database=url.path[1:])
else mysql.connector.error.Errors as err:
return "Error
Run Code Online (Sandbox Code Playgroud)
test.py
def test_conn(self):
with patch(app.mysql.connector) as mock_mysql:
with patch(app.os.environ) as mock_environ
con()
mock_mysql.connect.assert_callled_with("credentials")
Run Code Online (Sandbox Code Playgroud)
错误:未调用断言 mock_mysql.connect.assert_called_with.
我认为这是因为'Database_url'不在我修补的os.environ中,因为没有对mysql_mock.connect进行测试调用.
问题:
1我需要做些什么改变才能使这个测试代码工作?
我还要修补'urlparse'吗?
Appium 1.5.0
Xcode 7.3
IOS 10.11.4 OSX EI Capitan
Using on:Simulator iOS 8.1
Run Code Online (Sandbox Code Playgroud)
我的XML
<?xml version="1.0" encoding="UTF-8"?>
<AppiumAUT>
<UIAApplication value="" dom="" enabled="true" valid="true" visible="true" hint="" path="/0" x="0" y="0" width="375" height="667">
<UIAWindow name="" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/0" x="0" y="0" width="375" height="667">
</UIAWindow>
<UIAWindow name="" label="" value="" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1" x="0" y="0.6875" width="375" height="665.625">
<UIAImage name="icon-menu-logo.png" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/0" x="11.71875" y="33.5" width="46.875" height="46.875">
</UIAImage>
<UIAStaticText dom="" enabled="true" valid="true" visible="false" hint="" …Run Code Online (Sandbox Code Playgroud)考虑这个正则表达式.
a*b
Run Code Online (Sandbox Code Playgroud)
这将失败的情况下 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac
这会使67调试器中的步骤失败.
现在考虑这个正则表达式.
(?>a*)b
Run Code Online (Sandbox Code Playgroud)
这将失败的情况下 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac
这会使133调试器中的步骤失败.
最后这个正则表达式:
a*+b (a variant of atomic group)
Run Code Online (Sandbox Code Playgroud)
这将失败的情况下 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac
这会使67调试器中的步骤失败.
当我检查基准测试atomic group (?>a*)b执行179%得更快.
现在原子组禁用回溯.所以比赛中的表现很好.
但为什么步数更多呢?有人可以解释一下吗?
为什么会有差异.在两个原子团(?>a*)b和之间的步骤a*+b.
他们的工作方式不同吗
例外:
2017-06-21 22:47:49,993 FATAL ExecMapper (main): org.apache.hadoop.hive.ql.metadata.HiveException: Hive Runtime Error while processing writable org.apache.hadoop.dynamodb.DynamoDBItemWritable@2e17578f
at org.apache.hadoop.hive.ql.exec.MapOperator.process(MapOperator.java:643)
at org.apache.hadoop.hive.ql.exec.ExecMapper.map(ExecMapper.java:149)
at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:50)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:441)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:377)
at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1132)
at org.apache.hadoop.mapred.Child.main(Child.java:249)
Caused by: java.lang.RuntimeException: Exception while processing record: org.apache.hadoop.dynamodb.DynamoDBItemWritable@2e17578f
at org.apache.hadoop.hive.dynamodb.DynamoDBObjectInspector.getColumnData(DynamoDBObjectInspector.java:136)
at org.apache.hadoop.hive.dynamodb.DynamoDBObjectInspector.getStructFieldData(DynamoDBObjectInspector.java:97)
at org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorConverters$StructConverter.convert(ObjectInspectorConverters.java:328)
at org.apache.hadoop.hive.ql.exec.MapOperator.process(MapOperator.java:626)
... 9 more
Caused by: java.lang.NumberFormatException: For input string: "17664956244983174066"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Long.parseLong(Long.java:444)
at java.lang.Long.parseLong(Long.java:483)
at org.apache.hadoop.hive.dynamodb.DynamoDBDataParser.getNumberObject(DynamoDBDataParser.java:179)
at org.apache.hadoop.hive.dynamodb.type.HiveDynamoDBNumberType.getHiveData(HiveDynamoDBNumberType.java:28)
at org.apache.hadoop.hive.dynamodb.DynamoDBObjectInspector.getColumnData(DynamoDBObjectInspector.java:128)
... 12 more
Run Code Online (Sandbox Code Playgroud)
我发送的配置单元查询是:
INSERT OVERWRITE TABLE …Run Code Online (Sandbox Code Playgroud) 有没有人知道如何通过appium python客户端缩放android中的元素?
我目前正在使用
self.driver.zoom(self.element, percent) 但这会给出错误
self.driver.zoom(self.element, percent)
File "/usr/local/lib/python2.7/site-packages/appium/webdriver/webdriver.py", line 308, in zoom
self.execute_script('mobile: pinchOpen', opts)
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 461, in execute_script
{'script': script, 'args':converted_args})['value']
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 233, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python2.7/site-packages/appium/webdriver/errorhandler.py", line 29, in check_response
raise wde
WebDriverException: Message: Method has not yet been implemented
Run Code Online (Sandbox Code Playgroud)
我也试过了MultiAction.
loc = self.element.location
print loc
xx, yy = loc["x"], loc["y"]
xx=700
action1 = TouchAction(self.driver)
action1.long_press(x=xx, y=yy).move_to(x=0, y=1000).release()
action2 = TouchAction(self.driver)
action2.long_press(x=xx, y=yy).move_to(x=0, y=-1000).release()
m_action = MultiAction(self.driver)
m_action.add(action1, action2) …Run Code Online (Sandbox Code Playgroud) 我正在创建一个dataframe来自csv.我已经通过文档,多个SO帖子,链接,因为我刚刚开始Pandas但没有得到它.csv有多个具有相同名称的列说a.
所以在形成之后dataframe,当我做df['a']哪个值时它会返回?它不会返回所有值.
也只有一个值会有一个字符串休息.None我怎么能得到那个列?
当我们这样做时table.batch_writer(),boto3 API,它是插入还是更新?
通过更新我的意思是partition key,sort key are same但其他attributes不一样.我在任何文档中都找不到这个.
所以我有一个图像让我们说small.png和一个更大的图像big.png.小图像在较大的图像中出现2次,我希望找到它的位置.
我尝试使用numpy和Image但是出错了
'JpegImageFile' object has no attribute '__getitem__'我之前有png格式,它给出了同样的错误.
是否有任何其他模块或方法来完成这一点.我对任何人开放.
现在抛出错误的代码是
import numpy
from PIL import Image
here = Image.open(r"/Users/vks/Desktop/heren.jpg")
big = Image.open(r"/Users/vks/Desktop/Settingsn.jpg")
print here,big
herear = numpy.asarray(here)
bigar = numpy.asarray(big)
herearx = herear.shape[0]
hereary = herear.shape[1]
bigarx = bigar.shape[0]
bigary = bigar.shape[1]
print herearx , hereary , bigarx, bigary
stopx = bigarx - herearx + 1
stopy = bigary - hereary + 1
for x in range(0, stopx):
for y in range(0, stopy): …Run Code Online (Sandbox Code Playgroud) 使用Eclipse Mars.我已经通过安装软件从help.Iow添加了aws java sdk 1.11.123.当我运行Tomcat Server 7时,我收到此错误:
May 02, 2017 11:57:32 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [PdsServlet] in context with path [/PdsAWS] threw exception [java.lang.NoClassDefFoundError: Could not initialize class com.amazonaws.partitions.PartitionsLoader] with root cause
java.lang.NoClassDefFoundError: Could not initialize class com.amazonaws.partitions.PartitionsLoader
我也明白了
java.lang.NoSuchFieldError: ALLOW_FINAL_FIELDS_AS_MUTATORS
但是,当我检查库时,我可以看到PartitionsLoader.How可以解决这个问题吗?
更多看似相关的错误:
May 03, 2017 9:39:04 AM com.sun.jersey.spi.container.ContainerResponse mapMappableContainerException
SEVERE: The exception contained within MappableContainerException could not be mapped to a response, re-throwing to the HTTP container
java.lang.NoClassDefFoundError: Could not initialize class com.amazonaws.partitions.PartitionsLoader
at com.amazonaws.regions.RegionMetadataFactory.create(RegionMetadataFactory.java:30)
at …Run Code Online (Sandbox Code Playgroud) Class BigClassA:
def __init__(self):
self.a = 3
def foo(self):
self.b = self.foo1()
self.c = self.foo2()
self.d = self.foo3()
def foo1(self):
# do some work using other methods not listed here
def foo2(self):
# do some work using other methods not listed here
def foo3(self):
# do some work using other methods not listed here
Class BigClassB:
def __init__(self):
self.b = # need value of b from BigClassA
self.c = # need value of c from BigClassA
self.d = # need …Run Code Online (Sandbox Code Playgroud) python ×7
appium ×2
java ×2
amazon-emr ×1
android ×1
appium-ios ×1
aws-java-sdk ×1
backtracking ×1
boto3 ×1
class ×1
csv ×1
eclipse ×1
hadoop ×1
hive ×1
ios ×1
macos ×1
mocking ×1
numpy ×1
pandas ×1
pcre ×1
python-2.7 ×1
python-3.x ×1
regex ×1
tomcat ×1
unit-testing ×1
zoom ×1