Hi, I am working for Nova API tests in Tempest, and I'd like to ask opinions about the ways.
Tempest generates a request and sends it to each RESTful API. Then Tempest receives a response from the API and verifies the response. >From the viewpoint of the backward compatibility, it is important to keep the formats of request and response. Now Tempest already verifies the request format because Tempest generates it. However it does not verify the response format in many test cases. So I'd like to improve it by adding verification code. but now I am facing a problems and I'd like to propose a workaround for it. Problem: The deserialized bodies of an XML response seems broken in some cases. In one case, some API attributes disappear in a deserialized body. In the other case, some API attribute names are different from JSON response. For example, the one of JSON is 'OS-EXT-SRV-ATTR:host' but the one of XML is '{http://docs.openstack.org/compute/ext/extended _status/api/v1.1}host'. I guess they are deserializer bugs of Tempest, but I'm not sure yet. Possible solution: The best way is to fix all of them, but I think the best way needs a lot of effort. So I'd like to propose the way to skip additional verification code in the case of XML tests. The sample is the line151 of https://review.openstack.org/#/c/77517/16/tempest/api/compute/admin/test_servers.py Now XML format has been marked as "deprecated" in Nova v2 API[1] and XML client would be removed from Tempest in Juno cycle. In addition, I guess there is a lot of this kind of problem because I faced the above problems through adding verification code for 2 APIs only. So now I feel the best way is overkill. Thanks Ken'ichi Ohmichi --- [1]: https://review.openstack.org/#/c/75439/ _______________________________________________ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev