[ 
https://issues.apache.org/jira/browse/BEAM-3159?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kenneth Knowles resolved BEAM-3159.
-----------------------------------
       Resolution: Fixed
    Fix Version/s: 2.4.0

> DoFnTester should be deprecated in favor of TestPipeline
> --------------------------------------------------------
>
>                 Key: BEAM-3159
>                 URL: https://issues.apache.org/jira/browse/BEAM-3159
>             Project: Beam
>          Issue Type: Bug
>          Components: sdk-java-core
>            Reporter: Ben Chambers
>            Assignee: Kenneth Knowles
>            Priority: Minor
>             Fix For: 2.4.0
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> Reasons:
> 1. The logical unit within a Beam pipeline is a transform. Either a small 
> transform like a ParDo or a larger composite transform. Unit tests should 
> focus on these units, rather than probing specific behaviors of the 
> user-defined functions.
> 2. The way that a runner interacts with a user-defined function is not 
> necessarily obvious. DoFnTester allows testing non-sensical cases that 
> wouldn't arise in practice, since it allows low-level interactions with the 
> actual UDFs.
> Instead, we should encourage the use of TestPipeline with the direct runner. 
> This allows testing a single transform (such as a ParDo running a UDF) in 
> context. It also makes it easier to test things like side-inputs and multiple 
> outputs, since you use the same techniques in the test as you would in a real 
> pipeline, rather than requiring a whole new API.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to