This product is not supported for your selected Datadog site. ().
이 페이지는 아직 영어로 제공되지 않습니다. 번역 작업 중입니다. 현재 번역 프로젝트에 대한 질문이나 피드백이 있으신 경우 언제든지 연락주시기 바랍니다.
Metadata
ID:python-best-practices/invalid-assert
Language: Python
Severity: Notice
Category: Best Practices
Description
In Python, non-empty strings and non-empty tuples are considered True in a boolean context. Therefore, assert "Something bad happened" and assert (foo, bar) will always evaluate to True, even if foo and bar are False or None. This means that these assertions will never fail and are therefore invalid.
To avoid this, make sure that the expression after the assert keyword is a boolean expression that can evaluate to either True or False. For example, instead of assert "Something bad happened", you could use assert foo is not None, "Something bad happened". This will raise an AssertionError with the message “Something bad happened” if foo is None. Similarly, instead of assert (foo, bar), you could use assert foo == bar to check if foo and bar are equal.
Non-Compliant Code Examples
assert"Something bad happened"assert(foo,bar)
Compliant Code Examples
assertfoo==barassertbooleanValueassertportId.isnumeric(),"portId must be numeric"
원활한 통합. Datadog Code Security를 경험해 보세요
Datadog Code Security
이 규칙을 사용해 Datadog Code Security로 코드를 분석하세요
규칙 사용 방법
1
2
rulesets:- python-best-practices # Rules to enforce Python best practices.
리포지토리 루트에 위의 내용을 포함하는 static-analysis.datadog.yml을 만듭니다
무료 IDE 플러그인을 사용하거나 CI 파이프라인에 Code Security 검사를 추가합니다