小编Col*_*lau的帖子

Python unittest:如果特定测试失败,则取消所有测试

unittest用来测试我的Flask应用程序,并nose实际运行测试.

我的第一组测试是确保测试环境干净并阻止在Flask应用程序配置的数据库上运行测试.我确信我已经干净地设置了测试环境,但是如果没有运行所有测试,我想要一些保证.

import unittest

class MyTestCase(unittest.TestCase):
    def setUp(self):
        # set some stuff up
        pass

    def tearDown(self):
        # do the teardown
        pass

class TestEnvironmentTest(MyTestCase):
    def test_environment_is_clean(self):
        # A failing test
        assert 0 == 1

class SomeOtherTest(MyTestCase):
    def test_foo(self):
        # A passing test
        assert 1 == 1
Run Code Online (Sandbox Code Playgroud)

如果它失败了,我想要TestEnvironmentTest引起unittestnose保释,并阻止SomeOtherTest和进行任何进一步的测试.是否存在一些内置的方法unittest(首选)或nose允许这样做?

python unit-testing nose

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

Python调用一个模块

我试图调用模块,但有些原因它给我错误.data.py包含一个项目列表,在main.py我试图迭代和打印项目.但我得到以下错误.

错误

Import error: No module named Basics
Run Code Online (Sandbox Code Playgroud)

data.py和main.py都位于c:/ python27/basics /

data.py

bob={'name':'bobs mith','age':42,'salary':5000,'job':'software'}
sue={'name':'sue more','age':30,'salary':3000,'job':'hardware'}
people=[bob,sue]
Run Code Online (Sandbox Code Playgroud)

main.py

from Basics import data

if __name__ == '__main__':
    for key in people:
        print(key, '=>\n  ', people[key])
Run Code Online (Sandbox Code Playgroud)

如果我只提供导入数据,那么我得到以下错误

名称错误:未定义名称"人员".

更新:

新代码:

from Basics import data

if __name__ == '__main__':

    for key in data.people:
        print(key, '=>\n  ', data.people[key])
Run Code Online (Sandbox Code Playgroud)

TypeError:list indices必须是整数,而不是dict

python

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

如何修复此语法错误?我很迷惑

这是我所做的所有编码,但我不断收到此语法错误.它将在底部进行更多解释.

def main():
    ActualValue()
    AssessedValue()
    printResult()

def ActualValue()
    global actual_value
    actual_value = float(input("Enter actual value:\t"))

def AssessedValue()
    global assessed_value
    global property_tax
    assessed_value = 0.6 * actual_value
    property_tax = assessed_value / 100 * 0.64

def printResult():
    print "n\For a property valued at $", actual_value
    print "The assessed value is $", assessed_value
    print "The property tax is $", property_tax

actual_value = None
assessed_value = None
property_tax = None

main()
Run Code Online (Sandbox Code Playgroud)

那是我的代码:

它一直说我有语法错误:

def printResult():
    print "n\For a property valued at $", actual_value
    print …
Run Code Online (Sandbox Code Playgroud)

python syntax-error

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

标签 统计

python ×3

nose ×1

syntax-error ×1

unit-testing ×1