[
https://issues.apache.org/jira/browse/HDDS-1554?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16855130#comment-16855130
]
Eric Yang commented on HDDS-1554:
---------------------------------
[~elek] {quote}Still I have mixed feelings. We already have a framework to
execute docker-composed based tests (smoketest/acceptance). I am wondering if
it would be easier to improve the existing approach to support this use case as
well.{quote}
Smoke test is written to exercise ozone from a black box point of view. It can
be developed quickly to cover wide range of features, but the reporting result
is coarse grit. There is some language specific barrier that Robot framework
can not easily penetrate and solve. For example, how to introspect that
authentication is verified on the server side instead of Java client. Robots
framework can not tap into JVM to give us the answer that we seek, but a junit
test can.
Robot test framework based test cases doesn't converge toward using Apache
Infra's Jenkins server. There are 33 out standing bugs for Jenkins Robot
Framework Plugin, and half of the bugs date back 5 to 10 years with no plan for
resolution. It will be a lot of work to work with Apache Infra to get Robot
test framework plugin to work in builds.apache.org. The time maybe better
spent on writing junit tests.
Fault injection test is white box testing because it can exercises Ozone
libraries in parts and inject faulty signal by making volume disappear or
read-only while interrogate client JVM for answers. However, white box tests
take longer to develop the complete pictures. I think both type of tests are
contributing differently to the collective end goals. There is no need to
favor one type of test over another.
> Create disk tests for fault injection test
> ------------------------------------------
>
> Key: HDDS-1554
> URL: https://issues.apache.org/jira/browse/HDDS-1554
> Project: Hadoop Distributed Data Store
> Issue Type: Improvement
> Components: build
> Reporter: Eric Yang
> Assignee: Eric Yang
> Priority: Major
> Attachments: HDDS-1554.001.patch
>
>
> The current plan for fault injection disk tests are:
> # Scenario 1 - Read/Write test
> ## Run docker-compose to bring up a cluster
> ## Initialize scm and om
> ## Upload data to Ozone cluster
> ## Verify data is correct
> ## Shutdown cluster
> # Scenario 2 - Read/Only test
> ## Repeat Scenario 1
> ## Mount data disk as read only
> ## Try to write data to Ozone cluster
> ## Validate error message is correct
> ## Shutdown cluster
> # Scenario 3 - Corruption test
> ## Repeat Scenario 2
> ## Shutdown cluster
> ## Modify data disk data
> ## Restart cluster
> ## Validate error message for read from corrupted data
> ## Validate error message for write to corrupted volume
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]