GeezerVison is showing github.com — No test found · Issue #156 · utPLSQL/utPLSQL-SQLDeveloper
DescriptionHello,
Is your feature request related to a problem? Please describe.
I try to run the Test_addition package on both MBED4 and MBED4_TEST databases (sui is an MBED4 image) but it doesn't work (no test found). However running on the sgbd output gives the following script:
**
alltests
test_addition
myfunction [,106 sec] (FAILED - 1)
Failures:
- myfunction
Actual: 2 (number) was expected to equal: 1 (number)
at "MBED4_TEST.TEST_ADDITION.MYFUNCTION", line 18 ut.expect(l_actual).to_equal(l_expected);
Finished in ,128949 seconds
1 tests, 1 failed, 0 errored, 0 disabled, 0 warning(s)
**
Describe the solution you'd like
I executed this require: ALTER USER UT3 quota unlimited on UT_DATA; but i have the same problem
i also gave MBED4 AND MBED4_TEST all rights (execution , selection..):
begin
for i in (select * from all_OBJECTS where owner = 'POWERCARD' and object_type = 'TABLE' )
LOOP
EXECUTE IMMEDIATE 'GRANT SELECT ON '||I.OBJECT_NAME|| ' TO MBED4_TEST';
END LOOP;
end ;
...
Thank you in advance

 Activityjgebal commented on Jul 18, 2022 Hello @LydiaAzzoug
Please do not use utPLSQL SQLDeveloper extension to report issues in utPLSQL. It makes it very hard to understand if the problem is with utPLSQL or with the extension. It also is harder to see what is going on.
The best you could do is to report the errors from plain-text begin ut.run('MBED4_TEST.TEST_ADDITION'); end;
This will produce output to the DBMS_OUTPUT.
Also, when you are referencing "MBED4 and MBED4_TEST databases" I suspect you are not really talking about separate database instances that you connect to, but you are actually talking about different database schemas in a single database instance.
Please try to use precise names. DATABASE, DATABASE INSTANCE and DATABASE SCHEMA are very different things.
Anyway,
It seems that you're struggling to understand why utPLSQL fails to execute the test-suite package.
To help you understand what is required let me give you few tips.
utPLSQL executed the tests as using the session and privileges of the connected user. It will always look for things to execute in context of CURRENT SCHEMA if not schema name is given when executing stuff.
If you want to execute test suite TEST_ADDITION that exists in schema MBED4_TEST try running the following series of commands from sql worksheet in SQLDeveloper
select username from all_users where username = 'MBED4_TEST';
--will show the connected user name as well as the current schema of that user
select user, sys_Context('userenv','current_schema') from dual;
--will show a record with information about the test package and it's status
select object_name, object_type, status from all_objects where owner = 'MBED4_TEST' and object_name = 'TEST_ADDITION';
--will show test package specification as it is in the database schema
select line, text from all_source where owner = 'MBED4_TEST' and name = 'TEST_ADDITION' order by line;
set serveroutput on
--will execute the test procedure outside of utPLSQL framework runner.
begin
MBED4_TEST.TEST_ADDITION.myfunction;
end;
/
--will run the test package using utPLSQL
begin
ut.run('MBED4_TEST.TEST_ADDITION');
end;
/
Please share the output from execution of the above script as TEXT (not as a screenshot)
That way I can check and review what is cause of your problem. LydiaAzzoug commented on Jul 19, 2022 jgebal commented on Jul 19, 2022 @LydiaAzzoug
In both outputs it is clear that utPLSQL works and executes the tests.
I really don't see this as a utPLSQL isssue. IT must be something related to SQLDeveloper or SQLDeveloper extension.
Are you able to do a screen recording of the issue you are facing? LydiaAzzoug commented on Jul 19, 2022 pesse commented on Jul 19, 2022 The video is very bad quality so I have a hard time to even see what packages are being run etc. Can you retry it with at least 640p, better 1080? jgebal commented on Jul 19, 2022 I see the key issue. The issue is related to SQLDeveloper extension. The extension fails to run the tests for some reason.
The tests run in Worksheet but no tests are found when running via SQLDeveloper - extension.
I will move that issue to SQLDeveloper extension project
@LydiaAzzoug - You will need to provide a bit more details:
- version of SQLDeveloper
- version of utPLSQL-SQLDeveloper extension
@PhilippSalvisberg - anything else is needed? PhilippSalvisberg commented on Jul 19, 2022 When I look at the screen shot then I do not see a suite and test annotation. Therefore the message "no tests found" is correct. LydiaAzzoug commented on Jul 19, 2022 If I put the annotations, maybe it doesn't show with the bad quality
create or replace package test_addition is
…
-- generated by utPLSQL for SQL Developer on 2022-07-05 13:13:00
--%suite(ut3)
--%suitepath(alltests)
--%test
procedure myfunction;
end test_addition;
Le mar. 19 juil. 2022 à 12:11, Philipp Salvisberg ***@***.***>
a écrit :
PhilippSalvisberg commented on Jul 19, 2022 @LydiaAzzoug I can reproduce the problemn when I create a test package in the SQLDev editor but do not deploy it in the database.
Please try the following:
Create the following code in the SQLDev editor
create or replace package test_addition is
--%suite(ut3)
--%suitepath(alltests)
--%test
procedure myfunction;
end test_addition;
/
and deploy it by pressing Ctrl-Enter or by pressing this icon in the toolbar of the worksheet:

and then select run utPLSQL test from the context menu in the editor

In my SQLDev, the result looks like this:

Please try also to run the the following in a new SQLDev worksheet using the same connection as the one you used to deploy the test package:
set serveroutput on size unlimited
execute ut.run('test_addition');
In my case the result looks like this:

What are the results in your case? LydiaAzzoug commented on Jul 19, 2022 I did the same steps but it does not work
Le mar. 19 juil. 2022 à 13:51, Philipp Salvisberg ***@***.***>
a écrit :
…PhilippSalvisberg commented on Jul 19, 2022 @LydiaAzzoug can you please post the result of
set serveroutput on size unlimited
execute ut.run('test_addition');
Thank you. PhilippSalvisberg commented on Jul 19, 2022 @LydiaAzzoug: Since we cannot reproduce the problem, we obviously miss something. utPLSQL seems to work fine. Just the SQL Developer extension does not find any tests. Right?
Could you please provide all information to make the issue reproducible.
- Oracle SQL Database version
- utPLSQL version
- SQL Developer version
- utPLSQL for SQL Developer version
- Exact steps you are doing to run the tests. In text form or a video with a good resolution which is available on a public channel like youtube.
- The source of the test package
Thanks. LydiaAzzoug commented on Jul 19, 2022 Hello, I solved the problem by running this query: sqlplus
***@***.*** @create_user_grants.sql ut3 hr
finally it was because of synonyms and grants (I redid the installation)
Thank you
Le mar. 19 juil. 2022 à 14:14, Philipp Salvisberg ***@***.***>
a écrit :
…PhilippSalvisberg commented on Jul 19, 2022 @LydiaAzzoug Thanks for letting us know.
Still, this does not explain why the tests run in utPLSQL but not in the SQLDev extension. I still think we miss here something.
However, since the issue is not reproducible on your side I close the issue. LydiaAzzoug commented on Oct 11, 2022 Le mar. 19 juil. 2022 à 14:14, Philipp Salvisberg ***@***.***>
a écrit :
alltests
ut3
myfunction [,007 sec] (FAILED - 1)
Failures:
1) myfunction
Actual: 2 (number) was expected to equal: 1 (number)
at "POWERCARD.TEST_ADDITION.MYFUNCTION", line 18 ut.expect(l_actual).to_equal(l_expected);
Finished in ,010246 seconds
1 tests, 1 failed, 0 errored, 0 disabled, 0 warning(s)
Procédure PL/SQL terminée.
MetadataMetadataDevelopmentNo branches or pull requestsIssue actions
|