ApprovalTests.Java
ApprovalTests.Java copied to clipboard
Missing Documentation Pages
Is there a documentation page that you would like to see?
Add the title of the page below in a comment. Also, please preference it with one of the following four categories:
- Tutorial - Step-by-step guide to get started
- How To - Recipe to solve a specific problem
- Explanation - Theory and history around ApprovalTests
- Reference - Description, lists, and statistics of ApprovalTests api
1 or 2 https://github.com/approvals/ApprovalTests.Java/blob/master/approvaltests/docs/Reporters.md#class-and-method-level
I found the documentation about the PackageSettings a little lacking. Specifically I had a hard time figuring out the best configuration for use with IntelliJ running my tests. The differences between the various reporters were unclear and I had to try a bunch.
Separately, using PascalCase
for variable names seems unusual vs camelCase
or even better UPPER_SNAKE_CASE
.
For the record, we eventually found:
public class PackageSettings {
public static EnvironmentAwareReporter FrontloadedReporter = new JunitReporter();
public static ApprovalFailureReporter UseReporter = new QuietReporter();
public static String UseApprovalSubdirectory = "golden_files";
}
https://github.com/approvals/ApprovalTests.Java/blob/master/approvaltests/docs/README.md
"Main concepts for ApprovalTests" This section doesnt provide links to "writers" or "namers" which are otherwise mysterious for the user. Ideally there would be a link to explain these further and provide examples or customization options
@Kurru
I found the documentation about the PackageSettings a little lacking.
We created this page: https://github.com/approvals/ApprovalTests.Java/blob/master/approvaltests/docs/explanations/BestConfigurationPractices.md
Does it help?
@ScottBob while that does help explain the order of reporters (and that you could have class or method level reporters) my comment was more about how I learned about how I needed to configure ApprovalTest to make it do what I wanted.
It took rather a long time to find that PackageSettings was the way to configure multiple test files in 1 consistent way.
Some difficulties I had after I figured out that PackageSettings was a thing included:
- what are the common parameters available in PackageSettings (though seems more accessible now)
- what is a "FrontloadedReporter" vs a "UseReporter" (still have no idea)
- why do I need a reporter? (to display the diffs it seems?)
- What the benefits between the reporters? (are they mostly just different diff tool integrations)
- I also dont know why someone would want to change a reporter for a class or a method. What are the common use-cases for this feature?
@Kurru We made a page about FrontLoadedReporters. Would appreciate feedback.
@Kurru We made a page about the benefits of different reporters. Would appreciate feedback.