approvals / ApprovalTests.Java

ApprovalTest verification library for Java
Apache License 2.0
335 stars 74 forks source link

Missing Documentation Pages #342

Open ScottBob opened 1 year ago

ScottBob commented 1 year ago

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:

  1. Tutorial - Step-by-step guide to get started
  2. How To - Recipe to solve a specific problem
  3. Explanation - Theory and history around ApprovalTests
  4. Reference - Description, lists, and statistics of ApprovalTests api
Kurru commented 1 year ago

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";
}
Kurru commented 1 year ago

3. 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

ScottBob commented 1 year ago

@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?

Kurru commented 1 year ago

@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:

ScottBob commented 1 year ago

@Kurru We made a page about FrontLoadedReporters. Would appreciate feedback.

ScottBob commented 1 year ago

@Kurru We made a page about the benefits of different reporters. Would appreciate feedback.