You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apisix.apache.org by Ming Wen <we...@apache.org> on 2020/10/24 13:25:31 UTC

[DISCUSS] add e2e test for Apache APISIX manager API

Hello, dev,
The tests in the Apache APISIX dashboard project are all unit tests, and
the administrator's control commands are not actually sent to the data
nodes of APISIX.

This makes me concern about whether the manager API can work with APISIX.

So I suggest adding e2e test, run real APISIX data node in CI, and
determine whether the manager API is normal through its operation.  What do
you think?
-- 
Thanks,
Ming Wen, Apache APISIX & Apache SkyWalking
Twitter: _WenMing

Re: [DISCUSS] add e2e test for Apache APISIX manager API

Posted by YuanSheng Wang <me...@apache.org>.
nice job!

we need a stable version for manager API.

use E2E test is a good way.


On Tue, Oct 27, 2020 at 10:19 PM JunXu Chen <ch...@apache.org> wrote:

> I created an issue, and added test cases description in the issue [1]
>
> Welcome comment on the issue or reply here with any suggestion.
>
> Thank you.
>
>
> [1] https://github.com/apache/apisix-dashboard/issues/607
>
>
>
> On Mon, Oct 26, 2020 at 3:09 PM JunXu Chen <ch...@apache.org> wrote:
>
> >
> > Hi, Community,
> > here is a proposal about e2e test :
> >
> >
> > # Background
> >
> > Manager api no longer interacts with admin api, but writes data directly
> > to etcd.
> >
> > At present, we do not have the e2e test cases that cover from dashboard,
> > manager api to Apache APISIX.
> >
> >
> > # Plan
> >
> > 1. e2e test is divided into two parts, front-end e2e and back-end e2e
> >
> > 2. Because the front-end only uses part of the interface of `manager
> api`,
> > the front-end e2e only needs to ensure normal interaction with `manager
> api`
> >
> > 3. Back-end e2e, APISIX is started through docker, Go calls manager api
> to
> > configure routing and other resources, then access APISIX for
> verification.
> >
> >
> > # Details
> >
> > Development language: Go
> >
> > Test library: https://github.com/h2non/gock
> >
> > Test environment: Start with docker-compose, a 3-node ETCD cluster, and
> > 2-node APISIX cluster (2 nodes need to be verified at the same time).
> >
> > Since APISIX already has complete test cases, we plan to migrate the test
> > cases under the APISIX t directory.
> >
> > Because of the huge workload, I will first migrate the test cases under
> > t/node/ and t/router/, and leave other use cases to others who have time,
> > or migrate later when I have time to complete the coverage.
> >
> > What do you think? Any suggestion is welcome.
> >
> >
> >
> > On Sat, Oct 24, 2020 at 9:25 PM Ming Wen <we...@apache.org> wrote:
> >
> >> Hello, dev,
> >> The tests in the Apache APISIX dashboard project are all unit tests, and
> >> the administrator's control commands are not actually sent to the data
> >> nodes of APISIX.
> >>
> >> This makes me concern about whether the manager API can work with
> APISIX.
> >>
> >> So I suggest adding e2e test, run real APISIX data node in CI, and
> >> determine whether the manager API is normal through its operation.  What
> >> do
> >> you think?
> >> --
> >> Thanks,
> >> Ming Wen, Apache APISIX & Apache SkyWalking
> >> Twitter: _WenMing
> >>
> >
>


-- 

*MembPhis*
My GitHub: https://github.com/membphis
Apache APISIX: https://github.com/apache/apisix

Re: [DISCUSS] add e2e test for Apache APISIX manager API

Posted by JunXu Chen <ch...@apache.org>.
I created an issue, and added test cases description in the issue [1]

Welcome comment on the issue or reply here with any suggestion.

Thank you.


[1] https://github.com/apache/apisix-dashboard/issues/607



On Mon, Oct 26, 2020 at 3:09 PM JunXu Chen <ch...@apache.org> wrote:

>
> Hi, Community,
> here is a proposal about e2e test :
>
>
> # Background
>
> Manager api no longer interacts with admin api, but writes data directly
> to etcd.
>
> At present, we do not have the e2e test cases that cover from dashboard,
> manager api to Apache APISIX.
>
>
> # Plan
>
> 1. e2e test is divided into two parts, front-end e2e and back-end e2e
>
> 2. Because the front-end only uses part of the interface of `manager api`,
> the front-end e2e only needs to ensure normal interaction with `manager api`
>
> 3. Back-end e2e, APISIX is started through docker, Go calls manager api to
> configure routing and other resources, then access APISIX for verification.
>
>
> # Details
>
> Development language: Go
>
> Test library: https://github.com/h2non/gock
>
> Test environment: Start with docker-compose, a 3-node ETCD cluster, and
> 2-node APISIX cluster (2 nodes need to be verified at the same time).
>
> Since APISIX already has complete test cases, we plan to migrate the test
> cases under the APISIX t directory.
>
> Because of the huge workload, I will first migrate the test cases under
> t/node/ and t/router/, and leave other use cases to others who have time,
> or migrate later when I have time to complete the coverage.
>
> What do you think? Any suggestion is welcome.
>
>
>
> On Sat, Oct 24, 2020 at 9:25 PM Ming Wen <we...@apache.org> wrote:
>
>> Hello, dev,
>> The tests in the Apache APISIX dashboard project are all unit tests, and
>> the administrator's control commands are not actually sent to the data
>> nodes of APISIX.
>>
>> This makes me concern about whether the manager API can work with APISIX.
>>
>> So I suggest adding e2e test, run real APISIX data node in CI, and
>> determine whether the manager API is normal through its operation.  What
>> do
>> you think?
>> --
>> Thanks,
>> Ming Wen, Apache APISIX & Apache SkyWalking
>> Twitter: _WenMing
>>
>

Re: [DISCUSS] add e2e test for Apache APISIX manager API

Posted by JunXu Chen <ch...@apache.org>.
Hi, Community,
here is a proposal about e2e test :


# Background

Manager api no longer interacts with admin api, but writes data directly to
etcd.

At present, we do not have the e2e test cases that cover from dashboard,
manager api to Apache APISIX.


# Plan

1. e2e test is divided into two parts, front-end e2e and back-end e2e

2. Because the front-end only uses part of the interface of `manager api`,
the front-end e2e only needs to ensure normal interaction with `manager api`

3. Back-end e2e, APISIX is started through docker, Go calls manager api to
configure routing and other resources, then access APISIX for verification.


# Details

Development language: Go

Test library: https://github.com/h2non/gock

Test environment: Start with docker-compose, a 3-node ETCD cluster, and
2-node APISIX cluster (2 nodes need to be verified at the same time).

Since APISIX already has complete test cases, we plan to migrate the test
cases under the APISIX t directory.

Because of the huge workload, I will first migrate the test cases under
t/node/ and t/router/, and leave other use cases to others who have time,
or migrate later when I have time to complete the coverage.

What do you think? Any suggestion is welcome.



On Sat, Oct 24, 2020 at 9:25 PM Ming Wen <we...@apache.org> wrote:

> Hello, dev,
> The tests in the Apache APISIX dashboard project are all unit tests, and
> the administrator's control commands are not actually sent to the data
> nodes of APISIX.
>
> This makes me concern about whether the manager API can work with APISIX.
>
> So I suggest adding e2e test, run real APISIX data node in CI, and
> determine whether the manager API is normal through its operation.  What do
> you think?
> --
> Thanks,
> Ming Wen, Apache APISIX & Apache SkyWalking
> Twitter: _WenMing
>